2017-09-04 2 views
0

こんにちは私はcsvファイルを作成するこのコードを検索しましたが、これはデフォルトの場所を示すことによってのみ動作します。ファイルの場所を定義したい場合はどうすればよいですか?CSVファイルをユーザーが選択できる場所に保存するにはどうすればよいですか?

private void btnExport_Click(object sender, EventArgs e) 
{ 
    //Build the CSV file data as a Comma separated string. 
    string csv = string.Empty; 

    //Add the Header row for CSV file. 
    foreach (DataGridViewColumn column in dataGridView1.Columns) 
    { 
     csv += column.HeaderText + ','; 
    } 

    //Add new line. 
    csv += "\r\n"; 

    //Adding the Rows 
    foreach (DataGridViewRow row in dataGridView1.Rows) 
    { 
     foreach (DataGridViewCell cell in row.Cells) 
     { 
      //Add the Data rows. 
      csv += cell.Value.ToString().Replace(",", ";") + ','; 
     } 

     //Add new line. 
     csv += "\r\n"; 
    } 

    //Exporting to CSV. 
    string folderPath = "C:\\CSV\\"; 
    File.WriteAllText(folderPath + "DataGridViewExport.csv", csv); 
} 
+4

SaveFileDialogを使用 – PinBack

+0

Sidenote:GUIスレッドでこれを行わないでください。アプリケーションが大量のデータセットに対して応答しなくなる可能性があります。 – Fildor

+0

リファレンス:https://msdn.microsoft.com/en-us/library/system.windows.forms.savefiledialog(v=vs.110).aspx –

答えて

4

SaveFileDialog

SaveFileDialog dialog = new SaveFileDialog(); 
DialogResult result = dialog.ShowDialog(); 
string selectedPath = ""; 
if (result == DialogResult.OK) 
{ 
    selectedPath = dialog.FileName; 
} 

を使用してくださいあなたは、開始ディレクトリなどのようなオプションを選択することができますが、全体的には使用しては非常に簡単です。

+0

こんにちは私はどのようにファイルの種類と保存ファイル名をカスタマイズするのですか? saveFileDialog? – bob

+1

このdialog.Filter = "Text Files | * .txt"のようなフィルタプロパティを使用します。 –

関連する問題