java - 获取复制的文件

标签 java

我想将文件从一个文件夹复制到子文件夹,然后重命名文件名,我创建了子文件夹并重命名了文件名,这部分:

for (int i = 0; i < list.length; i++) {
    String oldDir = path2;
    String oldName = list[i].toString();

    String newDir =oldDir+"\\sub";
    File pDir = new File(newDir);
    pDir.mkdir();
    String fileName = new SimpleDateFormat("MM-dd-yyyy_HH-mm-ss")
    .format(new Date());
    String newName = fileName+"_"+list[i].getName();

    File f = new File (oldDir, list[i].getName());
    if(f.renameTo(new File(newDir + newName))){
        System.out.println("File is moved successful!");
    }else{
        System.out.println("File is failed to move!");
    }}
}

但是我无法将这个重命名的文件复制到新的子文件夹中,它在父目录中重命名它而不是旧文件名,我在哪里弄错了?

最佳答案

你的错误在'if'行:

if(f.renameTo(new File(newDir + newName))){

问题是您引用的是旧文件 f 的文件对象,然后将其重命名为新目录,这不起作用(如 NKukhar 指出的那样),因为它可能无法按您的意图复制文件.

关于java - 获取复制的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24194869/

相关文章:

java - 将字符串数组元素插入列表中

java - ReSTLet-1.1 example\book\rest\ch2\Example2_5 没有用于 HTTPS 的客户端连接器

java - 如何在 Windows 中使用带代理的 weka 包管理器?

java - 在 Tomcat 中 session 集群 Grails 应用程序

java - 在生成的 jOOQ 记录中包含 rowid

java - 最适合在智能手机中播放音频文件的文件格式

java - 错误: Given final block not properly padded

java - 通过 OSMDroid 使用在线存储中的 MBTiles

java - 如果手机移动缓慢,旋转传感器没有反应

java - 具有多个资源类的 Spring/Jersey Rest API 返回 404