我需要使用 StreamReader 在控制台应用程序上读取 .txt 文件,然后创建一个名称不同但内容相同的新文件或备份。问题是我无法弄清楚如何使用第一个文件中的内容放入新文件中。 (这是学校的事情,我是 C# 新手)
using System;
using System.IO;
namespace UserListCopier
{
class Program
{
static void Main()
{
string fineName = "zombieList.txt";
StreamReader reader = new StreamReader(fineName);
int lineNumber = 0;
string line = reader.ReadLine();
while (line != null) {
lineNumber++;
Console.WriteLine("Line {0}: {1}", lineNumber, line);
line = reader.ReadLine();
}
StreamWriter writetext = new StreamWriter("zombieListBackup.txt");
writetext.Close();
System.Console.Read();
reader.Close();
}
}
}
让我们考虑一下您已经打开了两个流,类似于@jeff 的解决方案,但您可以缓冲传输,而不是 ReadToEnd (并非真正有效地传输)。
_bufferSize 是一个 int,将其设置为适合您的缓冲区大小(1024、4096 等)
private void CopyStream(Stream src, Stream dest)
{
var buffer = new byte[_bufferSize];
int len;
while ((len = src.Read(buffer, 0, buffer.Length)) > 0)
{
dest.Write(buffer, 0, len);
}
}
这是一个要点,包含一个计算传输速度的类https://gist.github.com/dbones/9298655#file-streamcopy-cs-L36 https://gist.github.com/dbones/9298655#file-streamcopy-cs-L36
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)