0

について質問がStringBuilderありC#ます。何百万行ものデータを生成するプロセスがあります。StringBuilder緩衝材として使用しています。したがって、20000行を取得するたびに、ファイルを開いてデータをファイルにダンプします。20000 行ごとに、データをファイルにダンプします。StringBuilderこのために、処理から 1 行を取得するので、オブジェクト (バッファー)の新しい行にデータを追加します。しかし、ToString()メソッドを で使用するとStringBuilder、データが に変換されませんString

public static stringBuilder Message = new StringBuilder();   

Host

for(int i=0; i<20000; i++)
    string Lines = " 20000 Data lines one by one appended";

    Message.AppendLine(Lines);
    Event(EventName, Message.ToString());

Client

Void FileWrite(String Message)
{
     //Stream Writer to write the data into file.
     writeToFile.Write(Message);
     writeToFile.Flush();
}

ここで私のクライアントは、WCFホストでの処理から行の値を取得するクライアントです。サブスクライブしたイベントがトリガーされ、文字列値を取得StringBufferしてファイルに出力します。ファイルに書き込む方法はクライアント側にあります。クライアント側でイベントがトリガーされますが、StringBuilder値がファイルに出力されません。誰かがこの問題を解決するのを手伝ってくれますか?

4

1 に答える 1

0

System.Environment.NewLineを使用して、このようなことを行うようにコードを変更してみてください

for(int i=0;i<20000;i++)
    string Lines = " 20000 Data lines one by one appended"+System.Environment.NewLine;
    Message.AppendLine(Lines);
    Event( EventName, Message.ToString());

    Client:
    Void FileWrite(String Message)
    {
     //Stream Writer to write the data into file.
     writeToFile.Write(Message);
     writeToFile.Flush();
    }
于 2013-05-14T01:59:18.713 に答える