【发布时间】:2016-02-24 04:35:33
【问题描述】:
我有变量directory,它将是用户输入的目录,
如
“C:\Program Files (x86)\Google\Chrome\Application\chrome.exe”。问题是程序无法识别目录,因此不会通过Runtime.getRuntime().exec(new String[] {directory});启动它
我将如何制作一个方法/算法,从directory 获取每个\ 并将其转换为\\?
if (directory.substring(j, j+1).equals("\\"))
{
//directory.substring(j, j+1) == "\\\\";
}
例如:
C:\Program Files (x86)\Google\Chrome\Application\chrome.exe
应该变成
C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe
【问题讨论】:
-
@RobbyCornelissen 为什么不使用
File.Separator而不是常量符号?我想你应该看看这个stackoverflow.com/questions/27746419/… -
我认为你不想这样做。每个路径组件之间应该正好有一个反斜杠字符。
"\\"只是单个反斜杠的编译时表示。当您在命令行窗口中键入命令(如cd)时,您不会将反斜杠加倍。 -
@VikrantKashyap 我不需要看任何东西。问题是:如何用双反斜杠替换单反斜杠。我不需要对 OP 的运行环境或它们的应用程序的非功能性要求做任何进一步的假设。
标签: java