591

Fileクラスには2つの文字列とがありseparatorますpathSeparator

違いは何ですか?いつ使用する必要がありますか?

4

3 に答える 3

756

あなたが意味するFile.separator場合File.pathSeparator

  • File.pathSeparatorは、ファイル パスのリストで個々のファイル パスを区切るために使用されます。Windows では、PATH 環境変数を考慮してください。;ファイル パスを区切るにはa を使用しFile.pathSeparatorます。Windows では;.

  • File.separatorまたは/それ\が特定のファイルへのパスを分割するために使用されます。たとえば、Windows では、\またはC:\Documents\Test

于 2011-05-12T00:19:48.680 に答える
120

ファイルパスを作成するときは、区切り文字を使用します。したがって、UNIXではセパレータは/です。したがって、UNIXパスを作成する場合は、次の/var/tempようにします。

String path = File.separator + "var"+ File.separator + "temp"

pathSeparatorクラスパスのようにファイルのリストを処理する場合は、を使用します。たとえば、アプリがjarのリストを引数として使用した場合、UNIXでそのリストをフォーマットする標準的な方法は次のとおりです。/path/to/jar1.jar:/path/to/jar2.jar:/path/to/jar3.jar

したがって、ファイルのリストが与えられると、次のようになります。

String listOfFiles = ...
String[] filePaths = listOfFiles.split(File.pathSeparator);
于 2011-05-12T00:18:07.143 に答える