プロジェクトを開発するとき、あまりにも多くの障害が発生していないが、C#を使用してCSVファイルを作成し、多くの小さなパートナーは見積もりと私は同じ考えを持っていました。シンプルなCSV、シンプルな仕上がりのような固定パラメータの数を書きます。あなたが動的に不明または行う方法を変更するパラメータの数と種類を取得するために、データパラメータが発生した場合、特定のパラメータで固定されていないかのようにしかし、それはそうです。私はいつも(スクリプトまたは書き込み)ホイールを毎回作りたかったので二回目の時は、車輪一度リサイクルせずに、直接使用することができるようになるまで、独自のDLLパッケージをアップしたいと考えています。
作業の重複を削減することは、ソースコードを拡張し、いつの日か、まだ「ユニバーサル」の車輪になるためにホイールインターフェースやメソッドを増加することが適切でない場合であっても、プログラマの効率を改善するための効果的な方法の一つですが、また、生活のために。
ストレート対象にナンセンス終わり、。
図1に示すように、使用されるパラメータparamsはオブジェクト、動的入力パラメータ、すなわちタイプおよび各パラメータの未知のパラメータの数、入力有します。使用状況や介護うち最初の図は、私はここで、「リスク」を知りません
図2に示すように、文字列TEMP =ヘッド+ i.ToString()+ "4" +テイル;書式文字列と文字を用いて文章が実際馴染みConsole.WriteLineを(" 勤務先電話番号{0}、{1名で、占有}、年齢{2}」、N1、N2、N3);フォーマット請求引用部分。
3は、(I == Array.lengthと-1)実際には場合は、[、]区切り文字を大きくするために、パーティションはあなたが無視できる程度である必要はありませんExcelで通常表示、のために意図されます。
4は、あなたが参照することができ、コードのファイル操作を追加する必要があります。最もシンプルで実用的なコードのように、あなたは長いスピーチよりは読み忍耐ではありませんね。
5は、WriteCSV_Array()が使用されている、私は、もちろん、全体のCSVファイルを作成するためになされたものであり、2つのコード片は、閉鎖コード、またはプログラムの終了(一時停止)である実際のテストボタンを置く入射を書いまだ保存した後。効果はラインを書き、各イベントが一回トリガーされ、CSVファイルに書き込まれます。パラメータタイプ:整数、倍精度浮動小数点、文字列の通常の書き込みができ、もちろん、任意の数のパラメータ。
6、最後の望みを支持体に多くの友人を見て、コメントを、私は変更される欠陥がある、それは私のために有用である励まし、ありがとうございました!
公共 ボイド WriteCSV_Array(paramsはの オブジェクト[]配列) { 文字列 WriteStringメソッド= "" ; 列ヘッド= 「{ 」。 文字列のテール= " } " ; 以下のために(int型私= 0 ;私はarray.Countを()<;私は++ ) { 文字列 TEMP = i.ToStringヘッド+()+ "4 " +テイル; // 効果:{0,4} IF(I == array.Length- 。1)// これは、区切り文字なしで、最後の要素である場合[、] { WriteStringメソッド = WriteStringは+ TEMP。 } 他 // ない最後の要素は、デリミタを追加[、]、セパレータの役割がある:オープンExcelと、ユニットは、パーティションを表示します { WriteStringメソッド = WriteStringメソッド+一時+ " " ; // 效果:{0,4}、{1,4}、... } } もし(File.Exists(@ " E:\ Test1.csv " )) { sw.WriteLine(WriteStringメソッド、配列); // 新しいオブジェクト[] {アレイ}); sw.Flush(); } 他に { // ファイルを一度に再初期化されていない場合 InitCSVControl(); } }
公共 のボイド InitCSVControl(文字列 filePathに= @ " E:\ " 文字列 fileNameに= " @ TestCSVdll.csv " 、 FileModeモード = FileMode.Create、 FileAccessのアクセス = FileAccess.Write) { 文字列のパス名= filePathに+ ファイル名; FS = 新しいFileStreamを(パス名、FileMode.Create、FileAccess.Write)。 SW = 新しいのStreamWriter(FS)。 }
プライベート 無効のbutton1_Click(オブジェクト送信者、EventArgsの電子) { オブジェクト[]配列。 配列 = 新しい オブジェクト [] { 0.0011、0.0022、0.0033、0.0044、0.0055 }。 csv_controller.WriteCSV_Array(アレイ) }