这是Jython代码(虽然这可能不是特定于Jython的问题)...
file_name = "Manifest.ttl"
file_url = File(file_name).toURL()
f = File(file_url.toString())
java.io.FileNotFoundException:java.io.FileNotFoundException: 文件:/home/james/projects/wordnet/wordnet30/rdf/Manifest.ttl(没有这样的 文件或目录)
答案 0 :(得分:2)
Javadoc救援:
通过转换给定的路径名字符串来创建新的File实例 成为一个抽象的路径名。如果给定的字符串是空字符串, 然后结果是空的抽象路径名。
参数: pathname - 路径名字符串
File构造函数将抽象路径名称作为参数,而不是URL的toString表示。
此外,不推荐使用toURL
。您可以使用toURI
,并使用此URI重新构建文件。
答案 1 :(得分:0)
toURL()添加正确的URL / URI所需的file://前缀。显然,File构造函数不检查并删除此前缀,因此它正在查找名为“file:// ...”的文件,而不是您希望它看起来的位置“/home/james/...".