C++でcsvファイルに入っているデータを1次元配列に読み込みたいのですが、どのようなコードをかけばいいでしょうか?

データは全て整数型です。

回答の条件
  • 1人2回まで
  • 登録:2008/05/14 00:37:02
  • 終了:2008/05/21 00:40:02

回答(3件)

id:t_shiono No.1

t_shiono回答回数256ベストアンサー獲得回数222008/05/14 17:58:43

ポイント35pt

こんな情報でよいですか?

getlineでterminalを指定して読む方法

http://ml.tietew.jp/cppll/cppll/article/8216

boost::tokenizerを利用する方法

http://ml.tietew.jp/cppll/cppll/article/8275

streamをうまく使って読むというのもありだと思いますが、変なデータが紛れてたりすると嫌なので、

とりあえず、stringでデータを取得して、atoiでもする方がよいかなと思います。

何かの参考になれば。

id:AjaxFlexRIA No.3

AjaxFlexRIA回答回数1ベストアンサー獲得回数02008/05/18 21:55:53

ポイント10pt

基本的にC++言語はC言語に対して上位互換性があります。

C++ - Wikipedia

よって、C言語のコードをそのまま流用することが可能です。



こちらに、C言語でcsv形式のファイルから文字を読み込むコードがありました。

CSVデータの読み込み - aki03の日記

データは全て実数型(double) という仮定のもと実装されているコードのなので、

これを整数型(int)としてやれば問題がないでしょう。



csv形式の区切り文字がカンマの場合には、

Comma-Separated Values - Wikipedia

/* データの区切り文字 */

#define SEP_DATA '\t'

となっている部分を、

/* データの区切り文字 */

#define SEP_DATA ','

と変更してやればいいでしょう。



この回答が参考になれば幸いです。

  • id:catmusic
    忙しくて AjaxFlexRIA さんの回答が開けないうちに質問が自動終了してしまいました。
    後ほどポイントを送信させていただきます。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません