コンテンツを1つのファイルにマージする必要があるファイルがいくつかあります。私はこれを行う次のコードを持っています...しかし、それはメモリ使用量の点でかなり非効率的です...あなたはそれを行うためのより良い方法を提案しますか?
Util.MoveFile関数は、単にボリューム間でのファイルの移動を考慮します
private void Compose(string[] files) { string inFile = ""; string outFile = "c:\final.txt"; using (FileStream fsOut = new FileStream(outFile + ".tmp", FileMode.Create)) { foreach (string inFile in files) { if (!File.Exists(inFile)) { continue; } byte[] bytes; using (FileStream fsIn = new FileStream(inFile, FileMode.Open)) { bytes = new byte[fsIn.Length]; fsIn.Read(bytes, 0, bytes.Length); } //using (StreamReader sr = new StreamReader(inFile)) //{ // text = sr.ReadToEnd(); //} // write the segment to final file fsOut.Write(bytes, 0, bytes.Length); File.Delete(inFile); } } Util.MoveFile(outFile + ".tmp", outFile);
}