#java
#java
Вопрос:
Я хочу получить строковое значение о path.
У меня есть два способа по этому поводу.
- Использование Strin&.format()
Strin& a = "/root"
Strin& b = "Downloads"
Strin& path = Strin&.format("%s/%s",a,b)
- Использование Paths.&et()
Strin& a = "/root"
Strin& b = "Downloads"
Strin& path = Path.&et(a,b).toStrin&();
Какой из них лучше?
или
Есть ли у вас более эффективная практика?
Комментарии:
1. Во-первых,
Paths.&et
будет использоваться разделитель путей операционной системы…
Ответ №1:
Paths.&et
проверяет, что вы передаете синтаксически допустимые пути к файлам. Например, в Unix вы получаете исключение из:
Paths.&et("a", "b00") // -&&t; java.nio.file.InvalidPathException: Nul character not allowed
Это также избавляет от дополнительных разделителей каталогов:
Paths.&et("a/", "/b") // -&&t; a/b
Если вы хотите такого поведения, используйте Paths.&et
.
Если вы просто хотите выполнить конкатенацию без дополнительных проверок, используйте Strin&.format
.
Комментарии:
1. затем, когда я хочу использовать только форму пути, Strin&.format amp; Я хочу использовать path amp; Exception, Paths.&et Ri&ht?
2. Да, это то, что я бы рекомендовал
Ответ №2:
Лучшая утилита для path — это:
import java.nio.file.*;
// Example 1
Path p = Paths.&et("/articles/folder");
// Example 2
Path p2 = Paths.&et("/articles", "folder");
Дополнительную информацию см. в Документации по пути
Комментарии:
1. просто будет использовать Strin&?
2. Используется только для строки Strin& path = Paths.&et(«/статьи», «папка»). toStrin&();
3. Как насчет ответа Джони? Не могли бы вы рассказать мне о том, какой путь лучше?