如何在Java中解组Windows文件名?
从Java,我将可执行文件提取到使用File.createTempFile()指定的位置。当我尝试运行我的可执行文件时,我的程序在尝试读取第一行输出时挂起。
我发现如果我尝试从另一个程序运行相同的提取可执行文件,如果我将目录指定为C: Documents and Settings username Local Settings Temp prog.exe,它就可以工作。但是,如果我将目录指定为C: DOCUME~1 USERNA~1 LOCALS~1 Temp prog.exe,我就会挂起。
有没有办法解开我的程序中的波浪号文件名,这样我就可以指定一个可以工作的目录名?
(因为我总是喜欢解决语言和API设计问题,Java File.createTempFile()和java.io.tmpdir有什么理由要评估到错误的文件名?)
没有找到相关结果
已邀请:
2 个回复
耐钨徒
来获得扩展路径。例如。:
......生产......
我在XP上对此进行了测试,但假设它在其他Windows操作系统上的工作方式类似。 请参阅@ raviaw对第二个问题的回答。
雇砰