使用してSystem.IOを。 使用してSystem.Dataを。 使用してSystem.Textのを。 公共 ボイドDataTableToWriteCsvFile(たSystem.Data.DataTableデータ) { CONST INTたBufferSize = 4096 。 SaveFileDialogは、fileDialog = 新しいSaveFileDialog(); fileDialog.Title = " CSV " 。 fileDialog.Filter = " csvfile内(。* CSV)| * .CSV " 。 DialogResult dialogResult = fileDialog.ShowDialog()。 もし(dialogResult == DialogResult.OK) { 文字列 STR = fileDialog.FileName。 使用(のFileStream FS = 新規のFileStream(STR、FileMode.OpenOrCreate、FileAccess.Write)) { 使用(BufferedStream BS = 新しいBufferedStream(FS、たBufferSizeを)) { 使用(のStreamWriter SW = 新規のStreamWriter(BS、Encoding.Default)) { StringBuilderのdata_str = 新しいStringBuilderの(); 以下のための(int型K = 0。K <data.Columns.Count。K ++ ) { もし(K == data.Columns.Count - 1 ) { data_str.Append(" \" " + data.Columns [K] .ColumnName.ToString()+ " \」" )。 } 他 { data_str.Append(" \" " + data.Columns [K] .ColumnName.ToString()+ " \」" + "" ); } } sw.Write(data_str + " \ R \ n " ); data_str.Clear() のために(INT iが= 0 ; I <data.Rows.Count; I ++ ) { ための(int型 J = 0。 J <data.Columns.Count; J ++ ) { 場合(J == data.Columns.Count - 1 ) { data_str.Append(" \" " + data.Rows [I] [J] .ToString()トリム()+。" \」" ); } 他 { data_str.Append(" \" " + data.Rows [I] [J] .ToString()トリム()+。" \ " " + " 、" )。 } } sw.Write(data_str + " data_str.Clear(); data_str.Clear(); } } } MessageBox.Show(" CSVファイルが正常に保存されました。" ); } }