我需要在Windows中将文件路径转换为C:\ Documents and Settings \ Manoj \ Desktop for java as C:/ Documents and Settings / Manoj / Desktop。
有没有像这样转换的实用程序。?
答案 0 :(得分:44)
String path = "C:\\Documents and Settings\\Manoj\\Desktop";
path = path.replace("\\", "/");
// or
path = path.replaceAll("\\\\", "/");
在Docs
中查找更多详情答案 1 :(得分:11)
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
返回一个新的String,其中目标("\\"
)被替换("/"
)替换。只需拨打replace
即可更改path
。
replaceAll
和replace
之间的区别在于replaceAll会搜索正则表达式,而替换则不会。
答案 2 :(得分:5)
Java 7及更高版本支持Path
类(在java.nio包中)。
您可以使用此类将字符串路径转换为适用于当前操作系统的路径。
使用:
Paths.get("\\folder\\subfolder").toString()
在Unix机器上,会给你/folder/subfolder
。另一种方式也是如此。
https://docs.oracle.com/javase/tutorial/essential/io/pathOps.html
答案 3 :(得分:1)
非常简单,
只需检查
在MacOS中
File directory = new File("/Users/sivo03/eclipse-workspace/For4DC/AutomationReportBackup/"+dir);
File directoryApache = new File("/Users/sivo03/Automation/apache-tomcat-9.0.22/webapps/AutomationReport/"+dir);
,与我们在Windows中使用的相同
File directory = new File("C:\\Program Files (x86)\\Jenkins\\workspace\\BrokenLinkCheckerALL\\AutomationReportBackup\\"+dir);
File directoryApache = new File("C:\\Users\\Admin\\Downloads\\Automation\\apache-tomcat-9.0.26\\webapps\\AutomationReports\\"+dir);
使用双反斜杠代替单反斜杠
因此不需要任何转换器工具,只需使用查找并替换
“ C:\ Documents and Settings \ Manoj \ Desktop” 至 “ C:\\ Documents and Settings \\ Manoj \\ Desktop”
就这样
(希望它有用)
谢谢
答案 4 :(得分:-3)
String path = "C:\\Documents and Settings\\someDir";
path = path.replaceAll("\\\\", "/");
在Windows中,你应该使用四个反斜杠而不是两个反斜杠。