2011-11-14 9 views
0

私はC#を使って2つのファイルに一度に書き出しようとしています。セカンダリフォルダの場所は常に変化していますので、3つ以上のフォルダに同時に出力する必要があります。これを行う最善の方法は何ですか?C#で一度に2つ以上のテキストファイルに書き込む

私は現在、のStreamWriterを使用して特定の静的ロケーションに書き込みます。私は、Outputの末尾にsyncFolder(string[] folderPaths)関数を追加して、フォルダ2,3,4の内容(フォルダとテキストファイル)を更新すると思っています。

Isこれを行う最善の方法は?もしそうなら、どのようにフォルダを同期するのですか?

+1

あなたが描いていることはむしろ不明です...これの目標は何ですか? 1つのファイルに書き込んだりしてコピーしても同様の効果が得られますか? – Yahia

+0

二次フォルダは元のフォルダへのシンボリックリンクにすぎないのでしょうか?それとも、ファイルの個別のコピーである必要がありますか? – mbeckish

+0

このログの目的はありますか?そうであれば、既にマルチストリームをサポートし、実行時に設定可能なNLogのようなロギングライブラリをチェックしたいかもしれません。 –

答えて

0

データソースクラスとデータシンククラスがあり、それらを3番目の構成/レイアウト/レンダラークラスのセットと一緒にバインドする、さまざまなトレースおよびロギングライブラリのようなアプローチを使用できます。

これは関係性の観点から、多対多の関係を可能にします。

ストリームリーダーとライターはこのために動作しますが、1対1で結合するように設計されていると思います。

調べたいデザインパターンはObserver Patternです。 C#では、これはイベントで実装されています。これは世界で最も速いソリューションではないかもしれませんが(ソースの呼び出しごとにデリゲートコールがあるため)、確かに柔軟性があります。また、非同期シンク排水に適応可能でなければならない。

関連する問題