tagCANDY CGI VBレスキュー(花ちゃん) - VBレスキュー(花ちゃん)の投稿サンプル用掲示板 - Visual Basic 6.0 VB2005 VB2010
VB2005用トップページへVBレスキュー(花ちゃん)のトップページVB6.0用のトップページ
VBレスキュー(花ちゃん)の投稿サンプル用掲示板
     サンプル投稿用掲示板  VB2005 〜 用トップページ  VB6.0 用 トップページ
ダブルクォーテーションを含む文字列の読込表示_2(VB6.0) ( No.2 )  [親スレッドへ]
日時: 2011/03/28 15:17
名前: 花ちゃん

***********************************************************************************
* カテゴリー:[ファイル入出力][文字列処理][]                                      *
* キーワード:CSVファイル,ファイルの読み込み,ダブルクォーテーション,,,            *
***********************************************************************************

元質問:データに二重引用符が含まれているcsvファ.. - はな 2007/06/27-10:12 No.9446

csvファイルを読み込む処理をしています。
読み込むcsvファイルは以下のようになっていて、文字列は二重引用符で囲まれ、数字は囲まれていません。

"001","山田健         ",  300.00,"社員      "
"002","佐藤"ボブ"隆   ",  500.00,"留学生    "

このようファイルをInput #で読み込むと、
3行目の「佐藤"ボブ"隆」のところで、データが分かれてしまいます。

---------------------------------------------------------------------------------------
Re^2: データに二重引用符が含まれているcs.. - 花ちゃん  2007/06/27-14:30 No.9454
---------------------------------------------------------------------------------------
今回のような問題なら下記でもOKかと。

Private Sub Command1_Click()
   Dim AddDat   As Variant
   Dim myString As String
   Dim i        As Long
   myString = """002""" & "," & """佐藤""ボブ""隆   """ & _
                                    "," & "500.00" & "," & """留学生    """
   Debug.Print myString

   AddDat = Split(myString, ",")
   For i = LBound(AddDat) To UBound(AddDat)
      If Left$(AddDat(i), 1) = Chr(34) And Right$(AddDat(i), 1) = Chr(34) Then
         AddDat(i) = Mid$(AddDat(i), 2, Len(AddDat(i)) - 2)
      End If
      Debug.Print AddDat(i)
   Next i
End Sub



 [スレッド一覧へ] [親スレッドへ]