新生活を充実させるための「こだわり」を取材!!

いつもお世話になってます。

C#に関して質問です。
VisualC#2008を使用しています。

二次元配列の中にcsvファイルの内容を格納したいと思っています。
一次元配列だと、split(',')のようにコンマで区切って格納することができたのですが、
二次元配列になるとうまくいきません。

作成中のプログラム(一部)は下記のようになっています。

二次元配列になっても、csvファイルをうまく格納できる方法を誰かおしえていただけないでしょうか?
よろしくお願いします。


private void 問題ファイルを読み込むXToolStripMenuItem_Click(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();

if (ofd.ShowDialog() == DialogResult.OK)
{
System.IO.Stream stream;
stream = ofd.OpenFile();
//StreamReaderオブジェクトの作成
StreamReader sr = new StreamReader(stream, Encoding.GetEncoding(932));

string dat; //文字を入れる

while ((dat = sr.ReadLine()) != null)
{

sbuf = dat.Split(','); //エラー箇所

//DataGridViewに新しい行を追加
int r = dataGridView1.Rows.Add();

dataGridView1[0, r].Value = sbuf[mondai_count,0];
dataGridView1[1, r].Value = sbuf[mondai_count,1];
dataGridView1[2, r].Value = int.Parse(sbuf[mondai_count,2]); //Parseで文字列を数値に変換
}
//visible=False でDataGridView非表示
mondai_bun[0] = sbuf[mondai_count,0];
mondai_title[0] = sbuf[mondai_count,1];

mondai_bun2.Text = mondai_bun[0];
this.mondai_list.Items.Add(mondai_title[0]);

//ファイルを閉じる
sr.Close();
stream.Close();
}
}

教えて!goo グレード

A 回答 (1件)

次は参考になりませんでしょうか?



http://www.oborodukiyo.info/Forms/VS2008/F-ReadC …

トライしているのはDataGridViewに直接入れているようですが、DataTableに保存しておいて、
dataGridView1.DataSource = dt;
という形でもいけます。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
大変参考になりました。

お礼日時:2010/01/15 16:13

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

教えて!goo グレード

人気Q&Aランキング