私が行っているプロジェクトでは、プレーンテキスト ファイルの最初のX行を削除する必要があります。このルーチンを複数回実行する必要があり、毎回削除する行が異なるため、Xと言っていますが、常に最初から開始し、最初のXを削除してから、結果を同じファイルに出力します。
私が読んだ他のチュートリアルや例からつなぎ合わせた、次のようなことを考えています。
String line = null;
String tempFile = Path.GetTempFileName();
String filePath = openFileDialog.FileName;
int line_number = 0;
int lines_to_delete = 25;
using (StreamReader reader = new StreamReader(originalFile)) {
using (StreamWriter writer = new StreamWriter(tempFile)) {
while ((line = reader.ReadLine()) != null) {
line_number++;
if (line_number <= lines_to_delete)
continue;
writer.WriteLine(line);
}
}
}
if (File.Exists(tempFile)) {
File.Delete(originalFile);
File.Move(tempFile, originalFile);
}
しかし、これが機能するかどうかはわかりません.0行から始まる行番号などの小さなもののために...また、効率と形式の点で良いコードかどうかもわかりません.
本当にありがとう。