この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. PickerViewで複数のファイル選択を制限する方法
- 4. Flatpickr - 選択できる日付の数を制限する
- 5. ダイアログボックスで選択したRARファイルを抽出する方法
- 6. ファイル選択ダイアログなしでHTML <html type = "file" id = "uploadfile">コントロールを使用してファイルをアップロードする
- 7. 制限の選択
- 8. jfilechooserでマルチファイル選択ダイアログボックスを開いた後、ファイルが選択されたファイルを表示しています
- 9. SQL制限付きで日付を選択する方法は?
- 10. AngularJS:(angularMultipleSelectを使用して)ドロップダウンリストからの選択を制限します
- 11. Djangoフォームセットで利用可能な選択肢を制限する
- 12. ラベルを使用したノード選択の制限
- 13. Excelでワークシートを選択するダイアログボックス
- 14. ファイルの拡張子のフィルタを使用したファイル選択のClojureダイアログボックス
- 15. Chosen.js - 選択したアイテムの数を制限できますか?
- 16. 画像のURLを選択して制限する
- 17. JCalendarで日付を選択してダイアログボックスを作成する
- 18. MySQL開始値としてrownumを選択して制限を選択
- 19. JavaScriptを使用して複数選択リストで選択された選択肢の数を制限する方法を教えてください。
- 20. File = open()ファイル名に日付を使用しています。エラー、Python
- 21. TableViewで選択したセルのセクション数を制限する
- 22. htaccessファイルを使用してページのリダイレクトを制限する
- 23. .htaccessを使用してファイルへのアクセスを制限する
- 24. startActivityForResult(Intent.createChooser(fileIntent、 "Open file using ...")、APP_PICKED);からユーザー選択を取得する方法
- 25. FILE文を使用してファイルのテキストを上書きする
- 26. 各セクションで項目の制限数を選択できます
- 27. C++ win32 console app Windows APIを使用してファイルを選択ダイアログボックスを追加する
- 28. CFileDialogを使用してファイルを選択するときの描画の問題
- 29. HTML形式のみでファイルを選択するeBook? {file-type}
- 30. NLTKのWordNet選択制限
あなたはアップロードする前に拡張機能を検証していませんか? –