csvファイルを読み込み、カンマを削除してtxtファイルとして保存するものを作っているのですがうまくいきません。csvファイルを読み込んでリストに格納してそれを書き込むと考え、それを実装している途中でわけがわからなくなり、完全に行き詰ってしまいました。作成途中のソースを書いておくので何かアドバイスやヒントをいただけると幸いです。
C#
1using System; 2using System.Collections; 3using System.IO; 4 5namespace csv_txt 6{ 7 class Csv_Conv 8 { 9 // file_name...読み込むcsvファイル名 10 public void txt_creation(string file_name) 11 { 12 // リストの作成 13 ArrayList lineCsv = new ArrayList(); 14 15 // csvを読み取るためにリーダを作成 16 var csvReader = new 17 StreamReader(file_name,System.Text.Encoding.Default); 18 19 // 1行ずつすべての行を読み込む 20 string sLine = csvReader.ReadToEnd(); 21 22 while (sLine != null) 23 { 24 //sLine = csvReader.ReadLine(); 25 26 lineCsv.Add(sLine.Split(',')); 27 28 Console.WriteLine(sLine); 29 } 30 31 Console.ReadKey(); 32 } 33 } 34} 35 36
csvReader.ReadLine(); をコメントアウトして、ループの外でReadToEndによって全部読みだす変更はどのような意図からでしょうか?もしかして読み込みたいCSVファイルは1行だけのものですか?
ループで文字列配列のリストを作ろうとしているようで、そのわけがわからなくなった点ですが、ArrayList は配列を格納するためのリストなのではなく(できなくもないですが)、リストを配列的に扱えるリストである、と説明されたら、整理がつくでしょうか?却ってわけわからなくなってしまいましたかね^^;
回答2件
あなたの回答
tips
プレビュー