DataGridView CSV出力 への返答
投稿で使用できる特殊コードの説明。(別タブで開きます。)
以下の返答は逆順(新しい順)に並んでいます。
投稿者 あにす  (社会人)
投稿日時
2009/2/4 03:33:18
たぶんじゃなくて1行目にありました(笑)
Dim myColumns as String
Dim myColumns as String
投稿者 あにす  (社会人)
投稿日時
2009/2/4 03:30:15
1.入れないといけません。
2.CSVファイルの一般的書式 (RFC4180 日本語訳)(http://www.kasai.fm/wiki/rfc4180jp)にはそこらへんの記述はないですね。読み込む側の実装次第だと思います。
3.たぶんDim myColumns As Stringって箇所があるかと思うのですが、Dim myColumns As String = ""とすれば警告は出なくなると思います。
2.CSVファイルの一般的書式 (RFC4180 日本語訳)(http://www.kasai.fm/wiki/rfc4180jp)にはそこらへんの記述はないですね。読み込む側の実装次第だと思います。
3.たぶんDim myColumns As Stringって箇所があるかと思うのですが、Dim myColumns As String = ""とすれば警告は出なくなると思います。
投稿者 熊造  (社会人)
投稿日時
2009/2/4 02:28:41
DataGridViewの中身をCSVに出力を作りました。
①CSVの","はやはり都度いれないといけないのでしょうか
②数字が12桁のものがありそのままでは頭0などかけてしまうので"'"をいれましたが他に方法は
ないでしょうか
③myColumns +のところで警告がでます
'myColumns' は、値が割り当てられる前に使用されています。Null 参照の例外が実行時に発生する
可能性があります。
これを回避する方法はありでしょうか 問題なく動作はすます。
独学で回りに聞くひともなくやっておりまして ひょっとしたらもっとかんたんにできるのではないか
と思いまして
よければ教えていただけないでしょうか
Dim myColumns as String
Dim myFile As New System.IO.StreamWriter(myFilePath, False, System.Text.Encoding.Default)
myFile.Close()
Dim myFile1 As New System.IO.StreamWriter(myFilePath, True, System.Text.Encoding.Default)
'ヘッダー追加
For i As Integer = 0 To DataGridView1.ColumnCount - 1
If i = 0 Then
myColumns = DataGridView1.Columns(i).HeaderText
Else
myColumns += "," & DataGridView1.Columns(i).HeaderText
End If
Next
myFile1.WriteLine(myColumns)
'詳細追加
For i As Integer = 0 To DataGridView1.Rows.Count - 1
myFile1.WriteLine("'" & DataGridView1.Rows(i).Cells(0).Value & ",'" & DataGridView1.Rows(i).Cells(1).Value & "," & _
DataGridView1.Rows(i).Cells(2).Value & "," & DataGridView1.Rows(i).Cells(3).Value & "," & _
DataGridView1.Rows(i).Cells(4).Value & "," & DataGridView1.Rows(i).Cells(5).Value & "," & _
DataGridView1.Rows(i).Cells(6).Value & "," & DataGridView1.Rows(i).Cells(7).Value & "," & _
DataGridView1.Rows(i).Cells(8).Value & "," & DataGridView1.Rows(i).Cells(9).Value & "," & _
DataGridView1.Rows(i).Cells(10).Value & "," & DataGridView1.Rows(i).Cells(11).Value)
Next
myFile1.Close()
①CSVの","はやはり都度いれないといけないのでしょうか
②数字が12桁のものがありそのままでは頭0などかけてしまうので"'"をいれましたが他に方法は
ないでしょうか
③myColumns +のところで警告がでます
'myColumns' は、値が割り当てられる前に使用されています。Null 参照の例外が実行時に発生する
可能性があります。
これを回避する方法はありでしょうか 問題なく動作はすます。
独学で回りに聞くひともなくやっておりまして ひょっとしたらもっとかんたんにできるのではないか
と思いまして
よければ教えていただけないでしょうか
Dim myColumns as String
Dim myFile As New System.IO.StreamWriter(myFilePath, False, System.Text.Encoding.Default)
myFile.Close()
Dim myFile1 As New System.IO.StreamWriter(myFilePath, True, System.Text.Encoding.Default)
'ヘッダー追加
For i As Integer = 0 To DataGridView1.ColumnCount - 1
If i = 0 Then
myColumns = DataGridView1.Columns(i).HeaderText
Else
myColumns += "," & DataGridView1.Columns(i).HeaderText
End If
Next
myFile1.WriteLine(myColumns)
'詳細追加
For i As Integer = 0 To DataGridView1.Rows.Count - 1
myFile1.WriteLine("'" & DataGridView1.Rows(i).Cells(0).Value & ",'" & DataGridView1.Rows(i).Cells(1).Value & "," & _
DataGridView1.Rows(i).Cells(2).Value & "," & DataGridView1.Rows(i).Cells(3).Value & "," & _
DataGridView1.Rows(i).Cells(4).Value & "," & DataGridView1.Rows(i).Cells(5).Value & "," & _
DataGridView1.Rows(i).Cells(6).Value & "," & DataGridView1.Rows(i).Cells(7).Value & "," & _
DataGridView1.Rows(i).Cells(8).Value & "," & DataGridView1.Rows(i).Cells(9).Value & "," & _
DataGridView1.Rows(i).Cells(10).Value & "," & DataGridView1.Rows(i).Cells(11).Value)
Next
myFile1.Close()
紹介していただいたURLにいってみたのですが僕にはなんのことやら
さっぱりわかりまでんでした。
1-3まで返答いただきありがとうございました。