0

私のアプリケーションで多くのstreamwrtierを使用しています。これは、プログラムの実行中に発生したエラーをログに記録するためにサポートされていますが、現時点では、書き込みを行ってファイルを作成するだけです。

  if(File.Exists(currentLog))//currentLog = "Path\\Log.txt"
        {
            using (var fileStream = File.Open(currentLog,FileMode.Open))
            {
                StreamWriter ErreurStreamWriter = new StreamWriter(fileStream);
                ErreurStreamWriter.WriteLine("{0}",e.Message);
                ErreurStreamWriter.WriteLine("-------------------------------");
            }
        }
        else
        {
            using (var fileStream = File.Create(currentLog))
            {
                StreamWriter ErreurStreamWriter = new StreamWriter(fileStream);
                ErreurStreamWriter.Write("Liste des erreurs :");
                ErreurStreamWriter.WriteLine("{0}", e.Message);
                ErreurStreamWriter.WriteLine("-------------------------------");
            }
        }

ここで明らかな何かが欠けていますか?どんな助けでも素晴らしいでしょう、ありがとう

4

2 に答える 2

4

書き込み後にFlush()を実行するか、存在する場合は追加を試みる必要がある場合があります

于 2012-04-24T07:32:26.087 に答える
2

これを試して

        using (var fileStream = File.Open(currentLog, FileMode.Open))
        {
            using (StreamWriter erreurStreamWriter = new StreamWriter(fileStream))
            { 
                erreurStreamWriter.WriteLine("{0}", e.Message);
                erreurStreamWriter.WriteLine("-------------------------------");
            }
        }

基本的に私が思うことは、ストリームライターがファイルストリームにフラッシュすることは決してないということです。

于 2012-04-24T07:34:57.430 に答える