2012-03-28 10 views
1

Javaプログラムの内部にファイルパスを構築する必要があります。どのパス区切り文字を使用すれば
私のプログラムはWindowsとUnixの両方で動作するのですか?javaパスの独立性

Windowsにはドライブ文字が必要です。

答えて

2

System.getProperty("file.separator")を使用してください。

0

File.separatorを使用してファイルパスを構築します。

2

システムの独立性のためにJavaのFile.separatorを使用できます。

separatorは、Fileクラスのstatic Stringメンバーです。

Hereの例であり、hereFileのjavadocです。

EDIT - あなただけがC:を追加する必要が天気を確認したい場合は、OS情報

を取得するOSの情報を取得するためのthis exampleを見て、その後、OSの文字列を解析し、それはMS Windowsのですかどうかを確認。

また、すべてのドライブ情報を取得するのに便利な質問1298310があります。

+0

WindowsでドライブC:\を処理する方法 –

2

使用File.separator前方の両方のWindowsとUNIX /作品をスラッシュが、プラットフォームに依存しないように。

さらに、File.separatorの使用を避けるようお勧めします。 Unix上でWindowsまたは単一のファイルのルート/上のすべてのドライバの文字を取得するために

File dir = new File("myfolder"); // no slashes 
File file = new File(dir, "myfile.txt"); // no slashes. 

使用File.listRoots():フォルダ内のファイルを作成したい場合は以下を実行します。

0

File.seperatorを任意のオペレーティングシステム用に使用します。

関連する問題