每个文件夹都有一长串文本文件(大约 80 - 100 个文件)。我必须将每 4 个文本文件合并为一个文本文件。每个文本文件都是一个单独的 SQL 插入命令,因此必须在输出文件中保留 4 个文本文件中第一个文件的第一行(INSERT INTO database (value1, value2, value3) VALUES),其余 3 个文件应跳过第一行,只有值。
我遇到的问题是,在组合 4 个文件中的最后一个文件时,最后一个文件仅将最后一个文件的大约一半复制到新的组合文件中。
即使我尝试仅将 3 个文件或 2 个文件合并为一个。它仍然只复制最后一个文件的大约一半。
这是我的代码。
fourCount
指示第 4 个文本文件何时被合并。
string[] array2 = sqlInsertList.ToArray();
StreamWriter outfile3 = new StreamWriter(folderPath.Text + "\\" + count + ".txt");
count++;
foreach (string dirFileName in array2)
{
StreamReader readFile = new StreamReader(dirFileName);
string readFromFile = readFile.ReadLine();
if(fourCount == 1)
{
outfile3 = new StreamWriter(folderPath.Text + "\\" + count + ".txt");
outfile3.WriteLine(readFromFile);
}
while(!readFile.EndOfStream)
{
readFromFile = readFile.ReadLine();
outfile3.WriteLine(readFromFile);
}
count++;
if(fourCount == 4)
{
outfile3.WriteLine(";");
fourCount = 1;
}
else
{
fourCount++;
}
}