获取Java中的绝对路径
我有字符串:获取Java中的绝对路径,java,Java,我有字符串: String s=“~/abc/d.png” 如何获取此文件的绝对路径 我试过: File file = new File(s); String absolutePath = file.getAbsolutePath(); 但是它不能重新爱上~symbol。Java不会知道~的意思,因为它是主目录的shell扩展。您可以在将其交给文件之前执行此操作: s = s.replace("~",System.getProperty("user.home")); Java不知道~是什么意
String s=“~/abc/d.png”
如何获取此文件的绝对路径
我试过:
File file = new File(s);
String absolutePath = file.getAbsolutePath();
但是它不能重新爱上~symbol。Java不会知道
~
的意思,因为它是主目录的shell扩展。您可以在将其交给文件之前执行此操作:
s = s.replace("~",System.getProperty("user.home"));
Java不知道~
是什么意思,因为它是主目录的shell扩展。您可以在将其交给文件之前执行此操作:
s = s.replace("~",System.getProperty("user.home"));
我希望此代码在Windows、Mac或Linux上运行。只需删除/替换~
char即可<代码>字符串s=“/abc/d.png”代码>我希望此代码在Windows、Mac或Linux上运行。只需删除/替换~
字符即可<代码>字符串s=“/abc/d.png”
您是否可以使用File.getCanonicalPath()
来实现此目的,或者它会遇到同样的问题?@MadProgrammer您可以尝试一下,但我怀疑它是否有效~
与不同。
或
因为它是shell的一部分,而不是path元素。您的解决方案仅使用~symbol,但path可能包括其他特定符号。您有其他shell路径的通用解决方案吗?@merrymenvn您还有哪些特殊符号?。
和
通过该方法被删除。@Jon Lin:我不知道所有特殊符号都可以包含在shell路径中。我需要一个可以处理所有问题的解决方案(库/函数)。您是否可以使用File.getCanonicalPath()
,或者它会遇到同样的问题?@MadProgrammer您可以尝试一下,但我怀疑它是否有效~
与不同。
或
因为它是shell的一部分,而不是path元素。您的解决方案仅使用~symbol,但path可能包括其他特定符号。您有其他shell路径的通用解决方案吗?@merrymenvn您还有哪些特殊符号?。
和
通过该方法被删除。@Jon Lin:我不知道所有特殊符号都可以包含在shell路径中。我需要一个能处理所有问题的解决方案(库/函数)。