我尝试使用类似以下代码的方式在Java中打开文件:
```java
```
请帮助我,我已经尝试了很多方法。这真的让我疯掉了 :/
编辑:
为了提供更多信息:
我可以很容易地从Java创建此名称的文件。
似乎与空格有关
我不知道是否适用于其他字符; 我还没有发现任何其他的情况。 但当然,如果有一个问题,很容易就会出现100个。
我相当确定我无法从Java读取或写入该文件,但由于这不是我的主要关注点,因此我没有测试过。
java.awt.Desktop.getDesktop().open(new File("c:\\coolfile.txt");
当然,在大多数情况下,它都能正常工作。
但是!
当我有一个包含Unicode字符u3000的文件时,我无法打开它!即使该文件存在。
例如:
java.awt.Desktop.getDesktop().open(new File("c:\\coolfile\u3000withweirdname.txt");
我遇到了一个异常,即使文件存在也会出现
[java] java.io.IOException: Failed to open file:/E:/_prog/test%E3%80%80.txt. Error message: The system cannot find the path specified.
请帮助我,我已经尝试了很多方法。这真的让我疯掉了 :/
编辑:
为了提供更多信息:
我可以很容易地从Java创建此名称的文件。
似乎与空格有关
我不知道是否适用于其他字符; 我还没有发现任何其他的情况。 但当然,如果有一个问题,很容易就会出现100个。
我相当确定我无法从Java读取或写入该文件,但由于这不是我的主要关注点,因此我没有测试过。
File f = new File("c:\\coolfile\u3000withweirdname.txt"); System.out.println("Exists: " + f.exists() ); //is it real path?