1

如果这个问题太简单了,我很抱歉,我无法谷歌它,因为它不喜欢搜索 %20。

如果我有一个 URL,我使用 getFile() 方法获取我想要打开以进行处理的文件的路径。如果特定文件驻留在包含空格的目录中,则返回的路径将包含 %20 应该是空格的位置。

然后 FileReader 是否能够使用提供的路径,或者我需要用空格替换 %20 吗?

4

3 回答 3

3

您需要自己使用URLDecoder。FileReader 只使用它传递的字符串,这是正确的 - %20 是文件名中完全有效的字符序列,如果它被自动转换,您将无法访问包含它的文件。

于 2010-01-11T19:36:19.457 回答
2

用于URLDecoder.decode()解码路径

于 2010-01-11T19:33:32.240 回答
1

如果您下载了文件,并将其保存在本地文件系统中。您正在使用 FileReader 将其读取为

FileReader fr = new FileReader(new File(url.getFile()));

是 文件,可以理解 URL 编码。所以你不需要解码它。如果您按照其他人的建议对其进行解码,则在打印文件路径时它将更具可读性。

于 2010-01-11T19:50:47.637 回答