Мне нужно преобразовать путь к файлу в Windows: C:\Documents and Settings\Manoj\Desktop для java как C:/Documents and Settings/Manoj/Desktop.
Есть ли какая-нибудь утилита для преобразования.
Мне нужно преобразовать путь к файлу в Windows: C:\Documents and Settings\Manoj\Desktop для java как C:/Documents and Settings/Manoj/Desktop.
Есть ли какая-нибудь утилита для преобразования.
String path = "C:\\Documents and Settings\\Manoj\\Desktop";
path = path.replace("\\", "/");
// or
path = path.replaceAll("\\\\", "/");
Найдите более подробную информацию в Docs
String path = "C:\\Documents and Settings\\Manoj\\Desktop";
String javaPath = path.replace("\\", "/"); // Create a new variable
или
path = path.replace("\\", "/"); // Just use the existing variable
String являются неизменными. Как только они будут созданы, вы не сможете их изменить. Это означает, что replace возвращает новую строку, где цель ("\\") заменяется заменой ("/"). Просто вызов replace не изменится path.
Разница между replaceAll и replace заключается в том, что replaceAll будет искать регулярное выражение, замените его нет.
Java 7 и выше поддерживают класс Path (в пакете java.nio).
Вы можете использовать этот класс для преобразования строкового пути в один, который работает для вашей текущей ОС.
Использование:
Paths.get("\\folder\\subfolder").toString()
на машине Unix, вы получите /folder/subfolder. Также работает наоборот.
https://docs.oracle.com/javase/tutorial/essential/io/pathOps.html
String path = "C:\\Documents and Settings\\someDir";
path = path.replaceAll("\\\\", "/");
В Windows вы должны использовать четыре обратных слэша, но не два.