using (StreamWriter writer = File.CreateText(FinishedFile))
{
int lineNum = 0;
while (lineNum < FilesLineCount.Min())
{
for (int i = 0; i <= FilesToMerge.Count() - 1; i++)
{
if (i != FilesToMerge.Count() - 1)
{
var CurrentFile = File.ReadLines(FilesToMerge[i]).Skip(lineNum).Take(1);
string CurrentLine = string.Join("", CurrentFile);
writer.Write(CurrentLine + ",");
}
else
{
var CurrentFile = File.ReadLines(FilesToMerge[i]).Skip(lineNum).Take(1);
string CurrentLine = string.Join("", CurrentFile);
writer.Write(CurrentLine + "\n");
}
}
lineNum++;
}
}
Run Code Online (Sandbox Code Playgroud)
我目前这样做的方式太慢了.我正在合并每个50k +行长的文件和不同数量的数据.
例如:文件1
1
2
3
4
档案2
4
3
2
1
我需要将它合并成第三个文件
文件3 …
我需要能够创建长度为 19+ 位的数字范围。
我尝试使用 Enumerable.Range(120000003463014,50000).ToList();
这适用于较小的数字,但使用上面的我得到一个错误,说它对于 int32 数字来说太大了。有什么方法可以创建一个包含大数字的连续范围(有时我会使用 15 位数字,我什至会使用 25 位数字)。先感谢您
PS 我当前问题的起始编号是 128854323463014 Ending # 128854323513013