フォルダパスをとり、何らかの操作を実行するアプリケーションを作成しました。しかし、フォルダパスに英語以外の言語の文字が含まれている場合、それは動作しません。英語の文字のみをサポートします。この問題をどのように処理するのですか?ファイル/フォルダパスで異なる言語を扱う方法
1
A
答えて
1
理論的にはうまくいくはずです。実際にはほとんどの場合、シェルからjavaアプリケーションにパラメータを渡すのが問題です。これが正しく動作することを確認してください:コマンドプロンプトからリモートデバッグを使用してアプリケーションを実行します。パラメータを読み取っているコードにブレークポイントを作成し、値が何であるかを確認します。私はこの段階で値が壊れていると信じています。これは典型的な問題です。
この場合、コマンドプロンプトでUnicode文字を正しくサポートするようにシステムを設定する必要があります。
パスがコマンドラインから正しく読み取られた場合は、デバッグを続行し、どこが壊れているかを確認してください。使用しているセパレータを確認してください。 /と\の両方を使用しないでください。代わりにFile.separatorを使用してください。
+0
パスを見つけることができません。実際のパスは「D:/ local /ασηιση」ですが、これをツールで取得すると、これを「D:/ local/??????」に変換します – Ashish
少なくとも例外スタックトレースを提供します。 –
私はパスをとってパスが存在するかどうかチェックしますか?パスを与えるその時間は間違っています。私は "exist()"メソッドでチェックします – Ashish