私はテキストファイルを修正し、オリジナルをそのまま維持する必要があります。今はリーダライターを使ってファイルを読んでいます。ファイルを読み書きするのはファイルの移動と同じ時間ですか?
残念ながら、テキストファイルは巨大で約2GBで、テキストファイルはネットワークドライブ上にあるので、完了には約1時間かかります。
file.Moveを使用すると、読み書きより高速になりますか?たとえば、テキストファイルをローカルマシンに移動し、変更を行い、それを元に戻しますか?
オリジナルのコピーを作成し、読み書きするのではなく、そのように修正しますか?
私の現在のコード:
try
{
using (StreamReader reader = new StreamReader(filePath))
{
using (StreamWriter writer = new StreamWriter(output))
{
//go through the whole txt file
while (!reader.EndOfStream)
{
//gets the line
line = reader.ReadLine();
if (!modification case goes here))
{
writer.Write(line);
}
}
}
}
}
}
任意の助けをいただければ幸いです!
ローカルマシンにファイルをコピーしてからもう一度やり直してみましたか?これにより、ファイルをローカルで変更するのに時間がかかります。その前後でコピーが1時間に近づくと、ローカルで修正を行うことで多くのメリットを実現することはほとんどありません。 –
パフォーマンスヒットはどこですか?それがライン上にない場合= reader.ReadLine();ファイルの場所は問題ではありません。私はボトルネックがあなたの変更チェックであると推測しています。 ReadLine();あなたのボトルネックです。ファイルをローカルに移動してから戻ってくると助けになるとは思わない。 –
提案していただきありがとうございます!私は今すぐそれらをテストし、報告する。 – Childishforlife