![](/img/trans.png)
[英]Copy directories, subdirectory and files from one server to another server in java
[英]Java: copy files between directories
使用Java如何将文件从一个目录移动到另一个目录? 我应该只使用streamReader将字节复制到目标目录,然后删除原始文件吗?
尝试File.renameTo
操作。 尽管它的名字,它也可以用来移动文件。 但是,请注意,如文档所述,其行为将取决于您所运行的平台。
例:
File oldFile = ...;
File newDirectory = ...;
String newName = ...;
File newFile = new File(newDirectory, newName);
oldName.renameTo(newFile);
听起来不对。 如果确实要移动文件(而不是复制文件),则应该使用便宜得多的某种重命名方法。 (File.renameTo()似乎是推荐的方法)。
[编辑]在大多数(也许甚至是所有)操作系统中,移动操作比完整复制和删除便宜得多。 等同于删除一个目录中文件的条目,然后将其添加到其他目录中(或在同一目录中使用其他名称)。 无需触摸文件中的实际数据即可执行此操作。
或者您可以使用Java NIO:
我建议您使用org.apache.common
的FileUtils
类。 文档在这里 。
不用自己动手,可以使用apache commons IO实用程序之类的东西。
在这里您可以只调用FileUtils.copyFile
详情请参阅这里http://commons.apache.org/io/apidocs/org/apache/commons/io/FileUtils.html
尝试的CopyFile的方法fileutils中从类的Apache公地IO API。
已为您测试!
您可以执行一个文件namedTo并将其文件的新位置作为参数。
首先尝试File.renameTo()
进行实际移动。 如果失败,请进行真实的复制/删除。 除此之外: InputStream
和OutputStream
是执行复制的最基本方法。 但是,如果您不想重新发明轮子,可以使用FileUtis完全按照我的描述进行操作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.