Trong Pythontôi có thể tham gia hai con đường với os.path.join:
os.path.join("foo", "bar") # => "foo/bar"
Tôi đang cố gắng đạt được điều tương tự trong Java, mà không cần lo lắng nếu OScó Unix, Solarishoặc Windows:
public static void main(String[] args) {
Path currentRelativePath = Paths.get("");
String current_dir = currentRelativePath.toAbsolutePath().toString();
String filename = "data/foo.txt";
Path filepath = currentRelativePath.resolve(filename);
// "data/foo.txt"
System.out.println(filepath);
}
Tôi đã mong đợi điều đó Path.resolve( )sẽ tham gia vào thư mục hiện tại của tôi /home/user/testvới data/foo.txtviệc tạo ra /home/user/test/data/foo.txt. Tôi đang làm gì sai?
new File(parent, child)
filepath.toString()