このC#windowsフォームアプリケーションでは、いくつかのタスク操作のためにXMLファイルまたはCSVファイルをロードします。ブラウズボタンがあります。 [参照]ボタンをクリックすると、[ファイルを開く]ダイアログボックスが表示され、ドライブ上のある場所に移動してファイルを選択し、[アップロード]ボタンを使用してアップロードできます。 JPG、ZIPファイル、またはCSVやXML以外の形式のファイルを読み込むと、アプリケーションがクラッシュします。 C#でCSVファイルまたはXMlファイルだけを開くようにファイルを開くダイアログボックスを制限する方法はありますか?Open FIleダイアログボックスを使用して選択できるファイルを制限する
答えて
使用
openFileDialog.Filter = "CSV files (*.csv)|*.csv|XML files (*.xml)|*.xml";
のみ、CSVファイルやXMLファイルが表示されます。この方法。 でも、ユーザーは完全な名前を入力すると他のファイルタイプを選択することもできます。そのため、選択したファイル名を確認し、それに従ってコードを修正してください。
super one dude :)) – user1501034
フィルタを組み合わせて、csvファイルとxmlファイルの両方を見ることができます。openFileDialog.Filter = "Data files | * .csv; *。xml"; – sventevit
Filter
プロパティを使用して、ユーザーに特定の種類のファイルを選択させることができます。
ただし、これは保証ではありません。ユーザーは、ファイル名ボックスに(星)(星)を入力してすべてのファイルを表示することができます。そのため、コード内の結果ファイルもチェックする必要があります。
Path.GetExtension()
メソッドでこれを行うことができます。
上記のように.xmlファイルとcsvファイルのみを表示するファイルを開くダイアログでフィルタを適用できます。 with path.getextension http://msdn.microsoft.com/en-us/library/system.io.path.getextension.aspxユーザーが実際に正しい拡張子を持つファイルを選択したかどうかを確認できます。間違った拡張子が選択されている場合は、別のファイルを選択するように指示することができます。
アップロードする前にファイル拡張子を確認することを強くお勧めします。ユーザーがファイルを選択した後に拡張子をチェックするだけです。間違ったファイルが選択された場合は、アップロード/処理を続行しないでください。
完全な例です。
/// <summary>
/// Select CSV/XML file
/// </summary>
/// <param name="sender">
/// The sender.
/// </param>
/// <param name="e">
/// The e.
/// </param>
private void SelectCsvFile(object sender, EventArgs e)
{
var dlg = new OpenFileDialog
{
Filter = @"CSV files (*.csv)|*.csv|XML files (*.xml)|*.xml",
CheckFileExists = true,
Title = @"Select csv/xml file to read",
Multiselect = false
};
dlg.ShowDialog();
if (dlg.FileName == string.Empty)
{
MessageBox.Show(
@"You didn't select any file !",
@"No file was selected",
MessageBoxButtons.OK,
MessageBoxIcon.Asterisk);
}
else
{
this.txtCSVFilePath.Text = dlg.FileName;
}
}
- 1. ファイルを選択できるダイアログボックスを作成する
- 2. plupload - 選択したファイルの制限数
- 3. ファイル選択ダイアログなしでHTML <html type = "file" id = "uploadfile">コントロールを使用してファイルをアップロードする
- 4. 制限の選択
- 5. jfilechooserでマルチファイル選択ダイアログボックスを開いた後、ファイルが選択されたファイルを表示しています
- 6. Djangoフォームセットで利用可能な選択肢を制限する
- 7. Chosen.js - 選択したアイテムの数を制限できますか?
- 8. 画像のURLを選択して制限する
- 9. MySQL開始値としてrownumを選択して制限を選択
- 10. ファイルの拡張子のフィルタを使用したファイル選択のClojureダイアログボックス
- 11. JavaScriptを使用して複数選択リストで選択された選択肢の数を制限する方法を教えてください。
- 12. File = open()ファイル名に日付を使用しています。エラー、Python
- 13. FILE文を使用してファイルのテキストを上書きする
- 14. startActivityForResult(Intent.createChooser(fileIntent、 "Open file using ...")、APP_PICKED);からユーザー選択を取得する方法
- 15. .htaccessを使用してファイルへのアクセスを制限する
- 16. NLTKのWordNet選択制限
- 17. 制限、選択UNIONは列
- 18. Mysql最初に選択してから制限する
- 19. データベースから選択してソフトウェアで制限するか、データベース(mysql)で制限する
- 20. ダイアログボックスに選択ドロップダウンを追加する
- 21. selectConstraintでFullCalendarで選択可能なボックスを制限する
- 22. 選択した日付を制限する方法
- 23. <input type = "file">を使用する場合のファイル形式を制限しますか?
- 24. MFCはClistCtrlで選択したアイテムを制限します
- 25. mysqlの内部制限を選択
- 26. IDEを選択して使用する
- 27. <input type = "file"> .pdfファイルのみを選択できるように制限する方法はありますか?
- 28. 制限を基にした選択列によるnhibernateグループ
- 29. bluemixのスペースレベルで選択したサービスの使用に関する制限を設定する方法
- 30. トリガー<input type = "file">プログラムで角度を指定してファイルを選択
あなたはアップロードする前に拡張機能を検証していませんか? –