2017-04-14 3 views
0

JavaプログラムからクリーンなUnixパススタイルを生成したい。パスのFileSystemを

私は、明確な方法でパスを操作するためにjava.nio.file.Pathsを使用していますが、File.separatorCharと、マシンとは異なる他のすべてのシステム依存セパレータを使用しています。

私は、プログラムの起動場所に関係なく、私がUNIXのパススタイルを持つことを確実にする方法を探しています。

例:System.out.println(new Paths.get("/home/user/test.txt").getParent());

のUNIXのenvの期待出力:

$> /home/user

のWindowsのenvの

期待出力:$> /home/user

答えて

1

Path

が、それはに非常に簡単ですので、Iterableを実装それ:

public String toUnixPath(Path path) { 
    StringBuilder sb = new StringBuilder(path.isAbsolute() ? "/" : ""); 
    for (Path element : path) 
     sb.append(element).append('/'); 
    return sb.toString(); 
} 
関連する問題