-2

データセットから列を削除しようとしています。私のファイルは以下のようになります。どうすればこれを達成できますか?

入力-

1,2,3,4
2,3,4,5
3,4,5,6

出力-

2,3
3,4
4,5
4

1 に答える 1

1

これをすばやく行う方法はありません。ファイルの各行を「トークン化」して、必要な部分だけを書き込むことになります。

各行に固定数の整数(たとえば、例のように4)が含まれていることがわかっていて、その行からいくつかの列(たとえば、列2と3)を「切り取る」必要がある場合は、これをループで実行します。

int a,b;
fscanf(inFile, "%*d,%d,%d,%*s", &a, &b);
fprintf(outFile, "%d,%d\n", a, b);

もちろん、ループを開始する前にファイルを開き、ループを終了した後に閉じて、ループ状態で入力ファイルの終わりをテストする必要があります。

于 2012-09-14T03:14:13.010 に答える