我使用简单的Java程序来获取文件的规范路径,
import java.io.*;
public class Foo {
public static void main (String[] args)
{
try {
File file = new File(args[0]);
System.out.println(file.getCanonicalPath());
} catch (Exception e) {
e.printStackTrace();
}
}
}
当谈到NTFS流时,它会引发异常
C:\>java Foo c:\windows\system32\calc.exe::$DATA
java.io.IOException: The filename, directory name, or volume label syntax is inc
orrect
at java.io.WinNTFileSystem.canonicalize0(Native Method)
at java.io.WinNTFileSystem.canonicalize(Unknown Source)
at java.io.File.getCanonicalPath(Unknown Source)
at Foo.main(Foo.java:8)
有什么想法吗?
答案 0 :(得分:0)
如果文件名包含
* ?
您将获得java.io.IOException:无效的参数
| :
您将获得java.io.IOException:文件名,目录名或卷标语法不正确