別のアプリに簡単にインポートできるようにするために、15 個の txt ファイルの 4 セットを 4 つの大きな txt ファイルに書き込もうとしています。
これが私のコードです:
using System;
using System.IO;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace AggregateMultipleFiles
{
class AggMultiFilestoOneFile
{/*This program can reduce multiple input files and grouping results into one file for easier app loading.*/
static void Main(string[] args)
{
TextWriter writer = new StreamWriter("G:/user/data/yr2009/fy09_filtered.txt");
int linelen =495;
char[] buf = new char[linelen];
int line_num = 1;
for (int i = 1; i <= 15; i++)
{
TextReader reader = File.OpenText("G:/user/data/yr2009/fy09_filtered"+i+".txt");
while (true)
{
int nin = reader.Read(buf, 0, buf.Length);
if (nin == 0 )
{
Console.WriteLine("File ended");
break;
}
writer.Write(new String(buf));
line_num++;
}
reader.Close();
}
Console.WriteLine("done");
Console.WriteLine(DateTime.Now);
Console.ReadLine();
writer.Close();
}
}
}
私の問題は、ファイルの終わりを呼び出すことのどこかにあります。ファイルの最終行の書き込みが完了せず、前のファイルの最終行の途中から次のファイルの最初の行の書き込みを開始します。
これにより、インポート先のアプリ内のすべての列とデータが破棄されます。
おそらく、15 個のファイルそれぞれの各行の末尾にキャリッジとライン リターン \r\n を埋め込む必要があるのではないかと誰かが提案しました。
- 持っているものが機能しないのはなぜですか?
- 代わりにパディングが機能しますか?どのように私はそれを書くでしょうか?
ありがとうございました!