DOBON.NET DOBON.NETプログラミング掲示板過去ログ

Split

  • 題名: Split
  • 著者: SOMY
  • 日時: 2005/10/07 13:37:52
  • ID: 13151
  • この記事の返信元:
    • (なし)
  • この記事への返信:
  • ツリーを表示
環境/言語:[WinXP,VB.NET,.NET Framework 1.1.4322]
分類:[.NET]

初めて質問させていただきます。

今、CSVをStreamReaderで取込み、Splitを使用し配列に格納する
プログラムを作成しています。
CSVの中身は、文字列は「"」で括られ、数値は括り無し、区切りは「,」
になっています。

色々調べて、プログラムが完成したと思ったら、文字列に「,」や「"」が
含まれる事が判明しちゃいました・・・。

このような場合は、どうやって配列に格納すればよいのでしょうか・・・。

(データ例)
"A00001","ABC"D,EFG",12345
"A00002","CCC'3,,DD",15400

どんな情報でも良いので、ご教示お願い致します。
  • 題名: Re[1]: Split
  • 著者: まどか
  • 日時: 2005/10/07 13:54:56
  • ID: 13152
  • この記事の返信元:
    • [13151] Split SOMY 2005/10/07 13:37:52
  • この記事への返信:
  • ツリーを表示
> 今、CSVをStreamReaderで取込み、Splitを使用し配列に格納する
> プログラムを作成しています。
>
> 色々調べて、プログラムが完成したと思ったら、文字列に「,」や「"」が
> 含まれる事が判明しちゃいました・・・。
>
> このような場合は、どうやって配列に格納すればよいのでしょうか・・・。

何かライブラリが提供されていればそれで一発なのですが、
でなければ通常のテキスト一行読みをして自力でおこなうことになります。

行の先頭から文字を判断していくわけですが、そのときに囲んでいる途中かどうかがポイントになるでしょう。
例として、囲んでいる途中で”が出てきたとき、次の文字が,なら囲み終了、
次の文字が,でないなら単なるデータ など。
  • 題名: Re[1]: Split
  • 著者: なおこ(・∀・)
  • 日時: 2005/10/07 13:58:00
  • ID: 13153
  • この記事の返信元:
    • [13151] Split SOMY 2005/10/07 13:37:52
  • この記事への返信:
    • (なし)
  • ツリーを表示
2005/10/07(Fri) 14:07:20 編集(投稿者)

お世話になります。

■No13151に返信(SOMYさんの記事)

StreamReader.ReadLine.ToCharArray()をやって、
Charの配列をぐるぐる回して
項目区切りをフラグなどで判定するような
ロジックを自分で実装するしかなさそうですね。
  • 題名: Re[2]: Split
  • 著者: SOMY
  • 日時: 2005/10/07 13:58:15
  • ID: 13154
  • この記事の返信元:
  • この記事への返信:
  • ツリーを表示
■No13152に返信(まどかさんの記事)
> 何かライブラリが提供されていればそれで一発なのですが、
> でなければ通常のテキスト一行読みをして自力でおこなうことになります。
>
> 行の先頭から文字を判断していくわけですが、そのときに囲んでいる途中かどうかがポイントになるでしょう。
> 例として、囲んでいる途中で”が出てきたとき、次の文字が,なら囲み終了、
> 次の文字が,でないなら単なるデータ など。
>

早速の返信、ありがとうございます。
 「何かライブラリが・・・」とありますが、ライブラリとは・・・?
 無知ですいません・・・。

 やはり、自力で行くっきゃないんですかね・・・。
  • 題名: Re[3]: Split
  • 著者: SOMY
  • 日時: 2005/10/07 14:03:26
  • ID: 13155
  • この記事の返信元:
  • この記事への返信:
  • ツリーを表示
■No13153に返信(なおこ(・∀・) さんの記事)
>StreamReader.ReadLine.ToCharArray()をやって、
>Charの配列をぐるぐる回して
>項目区切りをフラグなどで判定するような
>ロジックを自分で実装するしかなさそうですね。

 返信、ありがとうございます。
 やはり、自力っすね・・・。
 ToCharArray、使ったことないので、少し調べてみます。

 ありがとうございます。
  • 題名: Re[4]: Split
  • 著者: SOMY
  • 日時: 2005/10/07 14:44:59
  • ID: 13163
  • この記事の返信元:
  • この記事への返信:
    • (なし)
  • ツリーを表示
解決チェック忘れてました・・・。
頑張りますー。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板