CSVファイルの読み込みでコメントを無視するには?

解決


みう  2003-10-03 05:57:25  No: 108946

初心者ですが、少し質問させてください。
CSV形式のテーブルファイルからデータを読み込むのですが、
CSVファイルの先頭行にコメントを付けたいのです。
ここで、例えば、先頭文字が「'」なら無視する。という処理は簡単に
行えるのですが、以下のようなケースだと、「,」をデータ区切りと認識
されてしまいますよね?先頭に「'」がくればその1行まるまるをコメントと
認識させて無視するにはどうしたらいいのでしょうか?

CSVファイルの内容例

'コードテーブル
'場所名(カナ),場所名(漢字),場所コード
'
トウキョウ,東京,100
オオサカ,大阪,120
キョウト,京都,130
ヨコハマ,横浜,110

この場合なら2行目の「,」を無視したいということです。
入力はinput#を使っています。
よろしくお願いします。


みう  2003-10-03 06:00:51  No: 108947

すみません。少し訂正&追加で、「先頭行にコメントをつけたい」ではなく「先頭にコメントをつけたい」です。ただ、先頭の何行かはコメントとして強制的に読み飛ばすという処理にはしたくないので、先頭に限らず、ファイル中のどの行に出てきても大丈夫なようにしたいのです。よろしくお願いします。


すーさん  2003-10-03 18:23:57  No: 108948

VB始めて間もないのでこれでいいのかはわかりませんが
一応こんな感じでできました。

Do Until EOF(Fno)
     AD = Seek(Fno)
         Input #Fno, strtemp
              If Left(strtemp, 1) = "'" Then
                   Seek #Fno, AD
                      Line Input #Fno, strtemp
                       strtemp = ""
               End If
                    Debug.Print strtemp
Loop
初めにseekで読み取り位置を調べて読み込んだ文字の先頭に"'"があったら
読み取り位置を戻してline inputって感じです。


みう  2003-10-04 09:42:07  No: 108949

Seekを使えばよかったんですね。無事解決です。
ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加