2012-02-08 6 views
1

私はwxWidgetアプリケーションをC++でビルドしています。アプリケーションの機能の1つは、メッセージボックスに文字列を入力するようにユーザーに求め、ユーザーがEnterキーを押すと、ユーザーが入力した文字列配列のファイル名でファイルを作成します。実際にファイルを作成する前にファイル名が有効かどうかを調べる

問題が発生しました。ユーザーが入力した文字列が有効な名前であるかどうかを確認します**。

  1. 一つの方法は、ファイルがシステム上に作成されているかどうかを確認し、それが無効な文字列であることをユーザに伝えることです。(私はこれをしたいいけません)。

  2. もう1つは、文字列内に<、/、\ etcなどの無効なファイル名文字が含まれているかどうかを確認することです。

ファイル操作を含まない他の方法はありますか?あなたの文字列にマッチするために無効な文字のリストを取得するには

static wxString wxFileName::GetForbiddenChars(wxPathFormat format = wxPATH_NATIVE) 

+3

ファイル名のルールは、関係するファイルシステムによって設定されます。マウントポイントなどを解決することなく判断することはできません。ファイルシステムコールはそれを実行しますが、他の方法でははるかに労力がかかります。 –

答えて

1

あなたは静的関数を使用することができます。そのドキュメントhereを見ることができます。すべての無効なファイル名を除外することはありませんが、それはあなたが望むものには十分かもしれません。

関連する問題