[string] Java7에서 문자열에서 경로 작성

Java 7 java.nio.file.PathString객체에서 객체를 만들려면 어떻게 해야합니까?

String textPath = "c:/dir1/dir2/dir3";
Path path = ?;

?를 사용하는 누락 된 코드는 어디에 있습니까 textPath?



답변

Paths클래스를 사용할 수 있습니다 .

Path path = Paths.get(textPath);

… 기본 파일 시스템을 사용한다고 가정합니다.


답변

javadocs에서 .. http://docs.oracle.com/javase/tutorial/essential/io/pathOps.html

Path p1 = Paths.get("/tmp/foo"); 

와 같다

Path p4 = FileSystems.getDefault().getPath("/tmp/foo");

Path p3 = Paths.get(URI.create("file:///Users/joe/FileTest.java"));

Path p5 = Paths.get(System.getProperty("user.home"),"logs", "foo.log"); 

Windows에서는 C : \ joe \ logs \ foo.log 파일을 작성합니다 (사용자 홈을 C : \ joe로 가정)
Unix에서 /u/joe/logs/foo.log 파일을 작성합니다 (사용자 홈을 / u / joe로 가정)


답변

가능한 경우 Path경로 요소에서 직접 작성하는 것이 좋습니다 .

Path path = Paths.get("C:", "dir1", "dir2", "dir3");
// if needed
String textPath = path.toString(); // "C:\\dir1\\dir2\\dir3"


답변

Java 7에 관한 질문이 있더라도 Java 11부터는 Path이것을 즉시 수행 할 수 있는 정적 메소드가 클래스에 있음 을 아는 가치가 있다고 생각합니다 .

하나의 문자열에 모든 경로가있는 경우 :

Path.of("/tmp/foo");

경로를 여러 문자열로 분류하면 다음과 같습니다.

Path.of("/tmp","foo");


답변