DXライブラリ 総合スレッド その19at GAMEDEVDXライブラリ 総合スレッド その19 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト456:名前は開発中のものです。 18/09/01 06:52:39.05 RWsTVHZH.net >>444 > 457:archive化したテキストファイルは改行コード\nが消えたバイナリファイル化してるから え、それ本当ですか? >最初にファイルサイズを計って1行ではなく全部をchar[filesize]に読み込むしかないんじゃない? すみません、もう少し具体的に教えてください! 458:名前は開発中のものです。 18/09/01 07:02:25.87 BLfEX+5a.net >>445 ファイルサイズが1000なら char t_data[ 1000 ] にファイルのデータを格納する で、後は添え字で任意のデータにアクセスする 459:名前は開発中のものです。 18/09/01 11:30:13.35 ghpuXsiR.net FileRead_scanfじゃいかんの? 460:名前は開発中のものです。 18/09/01 14:32:20.17 PENKT9BN.net >>445 2chは長い行で書き込めないのよ string all; char* path = "./hello.csv"; int size = (int)FileRead_size( path ) ; // 1char = 1byte char* buffer = new char[size]; int id = FileRead_open( path, false ) ; FileRead_read( buffer, size, id) ; all = buffer; // copy to string delete[] buffer; FileRead_close(id); // allをcsvのrow(\r\n)とcol(,)でパースする。csv書式の不正チェックとか丁寧にやると長くなるので以下適当 string csv[ROW][COL]; string tmp = ""; int x = 0; int y = 0; for(int i=0; i<all.length(); i++){ char c = all[i]; if(c == ',') { csv[y][x] = tmp; tmp = ""; x++; } else if (c == '\n') { // 本当は\r\nの2つで改行なんだけど csv[y][x] = tmp; tmp = ""; x = 0; y++; } else { tmp += c; } } csv[y][x] = tmp; // 最後の一個 文字列(string)から数値(intとか)に変えるときはatoiじゃなくてstrstreamだかを使うとよい 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch