Java 复制带有空格的文件
我试图将一个文件复制到另一个目录,但当源路径中有一个包含空格的目录时,我复制文件的方式不起作用,例如Java 复制带有空格的文件,java,apache,file,file-io,copy,Java,Apache,File,File Io,Copy,我试图将一个文件复制到另一个目录,但当源路径中有一个包含空格的目录时,我复制文件的方式不起作用,例如 /Volumes/public/Music/Directory With Spaces/01.mp3 我正在使用:http://commons.apache.org/io/ 我找不到解决这个问题的办法,有什么想法吗 编辑:问题可能是将带有空格的路径放入java.io.File对象。如果使用的是1.1版,则应该能够使用“%20”引用空格 来源:如果您使用所述目录创建一个java.io.File对
/Volumes/public/Music/Directory With Spaces/01.mp3
我正在使用:http://commons.apache.org/io/
我找不到解决这个问题的办法,有什么想法吗
编辑:问题可能是将带有空格的路径放入java.io.File对象。如果使用的是1.1版,则应该能够使用“%20”引用空格
来源:如果您使用所述目录创建一个
java.io.File
对象,它找到了吗?它是否找到该文件(即file.exists()
返回true
)?我的想法是,您需要在文件
对象或URI
/URL
对象中对其进行编码。但是,我对ApacheIO库并不十分熟悉,因为我倾向于在Java版本中使用标准库
如果该路径适用于标准Java IO库,那么这将指向Apache IO库的一些不同处理。如果没有,我会先尝试让它与这些文件一起工作,然后使用
文件
对象让它完全工作。尝试使用转义空格:
/Volumes/public/Music/Directory\With\Spaces/01.mp3
Doing file.exists()抛出false。对于java.io.File的路径,同时使用%20或转义空格是失败的。请看David Mole的评论-听起来有些东西与您期望的不一样。您也不喜欢这样。这是我的第一个想法,但没什么不同。奇怪。如果执行新建文件(“/Volumes/public/Music/”).listFiles()
,会发生什么情况?是否包含带有空格的目录?(如果包含,是否有效?)