如果这个问题太简单,我很抱歉,我无法谷歌,因为它不喜欢搜索%20。
如果我有一个URL,我使用getFile()方法获取我想要打开进行处理的文件的路径。如果特定文件驻留在包含空格的目录中,则返回的路径将包含空格应为的%20。
然后FileReader能够使用提供的路径,还是需要用空格替换%20?
答案 0 :(得分:3)
您需要自己使用URLDecoder。 FileReader只使用它所传递的String,这是正确的 - %20是文件名中完全有效的字符序列,如果它被自动转换,则无法访问包含它的文件。
答案 1 :(得分:2)
使用URLDecoder.decode()
解码路径
答案 2 :(得分:1)
如果您下载了该文件,并将其保存在本地文件系统中。 而你正在使用FileReader来阅读它 如
FileReader fr = new FileReader(new File(url.getFile()));
是文件,可以理解URL编码。所以你不需要解码它。 如果您按其他人的建议对其进行解码,那么它将更具可读性 你打印文件路径。