56 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			VB.net
		
	
	
	
	
	
			
		
		
	
	
			56 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			VB.net
		
	
	
	
	
	
| Public Class ArinDv
 | |
| 
 | |
|     Private Sub DataGridView1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
 | |
|         Select Case e.KeyCode
 | |
|             Case Keys.O
 | |
|                 If e.Control Then
 | |
|                     ExportView("c:\ExportData.txt", Me)
 | |
|                 End If
 | |
|         End Select
 | |
|     End Sub
 | |
| 
 | |
|     '//그리드뷰의 내용을 내보낸다(ArinDataView 의 일부)
 | |
|     Public Sub ExportView(ByVal Filename As String, ByVal Dv As DataGridView)
 | |
|         If Dv.RowCount < 1 Then
 | |
|             MsgBox("저장가능한 목록이 없습니다", MsgBoxStyle.Information, "확인")
 | |
|             Return
 | |
|         End If
 | |
|         Dim SD As New Windows.Forms.SaveFileDialog
 | |
|         'SD.InitialDirectory = My.Application.Info.DirectoryPath & "\XLSOUT"
 | |
|         SD.FileName = Filename
 | |
|         ' If System.IO.Directory.Exists(SD.InitialDirectory) = False Then System.IO.Directory.CreateDirectory(SD.InitialDirectory)
 | |
|         SD.Filter = "탭으로 분리된 텍스트파일(*.TXT)|*.TXT|콤마로 분리된 텍스트파일(*.CSV)|*.CSV"
 | |
|         SD.FilterIndex = 0
 | |
|         SD.RestoreDirectory = True
 | |
|         If SD.ShowDialog <> Windows.Forms.DialogResult.OK Then Return
 | |
|         SaveTextfile(Dv, SD.FileName, CChar(IIf(SD.FilterIndex = 2, ",", vbTab)))
 | |
| 
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub SaveTextfile(ByVal Dv As DataGridView, ByVal FUllFileName As String, ByVal Splitter As Char)
 | |
|         Dim Fs As New System.IO.FileStream(FUllFileName, IO.FileMode.Create)
 | |
|         Dim SW As New System.IO.StreamWriter(Fs, System.Text.Encoding.Default)
 | |
|         Dim Strbuf As String = ""
 | |
|         SW.WriteLine("====")
 | |
|         SW.WriteLine("파일생성일자" & vbTab & Now.ToShortDateString & vbTab & Now.ToShortTimeString)
 | |
|         SW.WriteLine("====")
 | |
|         For Each DC As Windows.Forms.DataGridViewColumn In Dv.Columns
 | |
|             Strbuf = Strbuf & vbTab & DC.HeaderText
 | |
|         Next
 | |
|         SW.WriteLine(Strbuf)
 | |
|         Strbuf = ""
 | |
|         For Each DR As Windows.Forms.DataGridViewRow In Dv.Rows
 | |
|             For i As Integer = 0 To Dv.Columns.Count - 1
 | |
|                 Strbuf = Strbuf & Splitter & DR.Cells(i).FormattedValue.ToString
 | |
|             Next
 | |
|             SW.WriteLine(Strbuf)
 | |
|             Strbuf = ""
 | |
|         Next
 | |
|         SW.Dispose()
 | |
|         Fs.Dispose()
 | |
|         MsgBox("저장완료" & vbCrLf & FUllFileName, MsgBoxStyle.Information, "확인")
 | |
|         Shell("notepad " & FUllFileName, AppWinStyle.NormalFocus)
 | |
|     End Sub
 | |
| 
 | |
| End Class
 | 
