DataGridView CSV出力

タグの編集
投稿者 熊造  (社会人) 投稿日時 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()
投稿者 あにす  (社会人) 投稿日時 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 = ""とすれば警告は出なくなると思います。
投稿者 あにす  (社会人) 投稿日時 2009/2/4 03:33:18
たぶんじゃなくて1行目にありました(笑)
Dim myColumns as String
投稿者 熊造  (社会人) 投稿日時 2009/2/4 16:11:24
あにすさん ありがとうございました。
紹介していただいたURLにいってみたのですが僕にはなんのことやら
さっぱりわかりまでんでした。
1-3まで返答いただきありがとうございました。