zoukankan      html  css  js  c++  java
  • java IO 文件批量重命名

    java IO 文件批量重命名

    package com.vfsd.renamefile;
    
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;
    
    /*******************************************************************************************************
     * Copyright: vc1.0 2018. All rights reserved.                    <br>
     * The whole package including this class is licensed under        <br>
     *                                                                 <br>
     * @ClassName:                                        <br>
     * @Directory:                                        <br>
     * @author:           lzb                                    <br>
     * @version:         v1.0.0                                        <br>
     * @date:                                                <br>
     *       
     * @Statement: If you are using the package or parts of it in any commercial way, a commercial license is required. <br>
     *   Visit <a href='http://www.bim-times.com'>http://www.bim-times.com</a> for more information.<br>
     * 
    *********************************************************************************************************/
    public class RenameFile {
        
        public static void main(String[] args) throws Exception {
            /*
            String fileDirStr = "D:\�ο��ֲ�\���\";
            renameFile(fileDirStr);
            */
            //mergeFile();
            
            String fileDir = "D:\zy_img_20190916\1\";
            String fileDir2 = "D:\zy_img_20190916\2\";
            
            
            renameFile2(fileDir,fileDir2);//图片拷贝并重命名
            //renameFile3(fileDir,fileDir2);//json拷贝并重命名
        }
        
        public static void renameFile(String fileDirStr) throws Exception{
            File fileDir = new File(fileDirStr);
            if(fileDir.isDirectory()) {
                File[] filesList = fileDir.listFiles();
                for(int i=0;i<filesList.length;i++) {
                    File fileIndex = filesList[i];
                    if(fileIndex.getName().indexOf(".jpg")>0 ||fileIndex.getName().indexOf(".png")>0 ||fileIndex.getName().indexOf(".jpeg")>0||fileIndex.getName().indexOf(".gif")>0) {
                        //String newName=fileDirStr+i+fileIndex.getName().substring(fileIndex.getName().length()-4, fileIndex.getName().length());
                        
                        File fileNew = new File(fileDirStr+i+fileIndex.getName().substring(fileIndex.getName().length()-4, fileIndex.getName().length()));
                        fileIndex.renameTo(fileNew);
                        System.out.println(fileNew.getName());
                    }
                }
            }
        }
        
        /**
         * 图片文件拷贝并重命名
         * @param fileDirStr
         * @param fileDir2
         * @throws Exception
         */
        public static void renameFile2(String fileDirStr,String fileDir2) throws Exception{
            File fileDir = new File(fileDirStr);
            if(fileDir.isDirectory()) {
                File[] filesList = fileDir.listFiles();
                for(int i=0;i<filesList.length;i++) {
                    File fileIndex = filesList[i];
                    if(fileIndex.getName().indexOf(".jpg")>0 ||fileIndex.getName().indexOf(".png")>0 ||fileIndex.getName().indexOf(".jpeg")>0||fileIndex.getName().indexOf(".JPG")>0) {
                        //String newName=fileDirStr+i+fileIndex.getName().substring(fileIndex.getName().length()-4, fileIndex.getName().length());
                        
                        File fileNew = new File(fileDir2+(i+1)+fileIndex.getName().substring(fileIndex.getName().length()-4, fileIndex.getName().length()));
                        fileIndex.renameTo(fileNew);
                        System.out.println(fileNew.getName());
                    }
                }
            }
        }
        
        /**
         * JSON文件拷贝并重命名
         * @param fileDirStr
         * @param fileDir2
         * @throws Exception
         */
        public static void renameFile3(String fileDirStr,String fileDir2) throws Exception{
            File fileDir = new File(fileDirStr);
            if(fileDir.isDirectory()) {
                File[] filesList = fileDir.listFiles();
                for(int i=0;i<filesList.length;i++) {
                    File fileIndex = filesList[i];
                    if(fileIndex.getName().indexOf(".json")>0) {
                        //String newName=fileDirStr+i+fileIndex.getName().substring(fileIndex.getName().length()-4, fileIndex.getName().length());
                        
                        File fileNew = new File(fileDir2+(i+1)+fileIndex.getName().substring(fileIndex.getName().length()-5, fileIndex.getName().length()));
                        fileIndex.renameTo(fileNew);
                        System.out.println(fileIndex.getName()+"     "+fileNew.getName());
                    }
                }
            }
        }
        
        /**
         * �Ѷ���ļ����е�ͼƬ�ϲ�
         * @throws IOException
         */
        public static void mergeFile() throws IOException {
            //String dir1 = "D:\�ο��ֲ�\����\��ע-2019\�_�����ע\mask_data\";
            //String dir1 = "D:\�ο��ֲ�\����\��ע-2019\humanandladder301-350_labeled\mask_data\";
            //String dir1 = "D:\�ο��ֲ�\����\��ע-2019\humanandladder451-600\mask_data\";
            //String dir1 = "D:\�ο��ֲ�\����\��ע-2019\humanandladder601-750\mask_data\";
            //String dir1 = "D:\�ο��ֲ�\����\��ע-2019\humanandladder150-300_labeled\mask_data\";
            //String dir1 = "D:\�ο��ֲ�\����\��ע-2019\maskedhumanandladder901-1050\mask_data\";
            //String dir1 = "D:\�ο��ֲ�\����\��ע-2019\humanandladder751-900\mask_data\";
            //String dir1 = "D:\�ο��ֲ�\����\��ע-2019\humanandladder1201-1350\mask_data\";
            String dir1 = "D:\�ο��ֲ�\����\��ע-2019\humanandladder1051-1200\mask_data\";
            
            
            File fileDir = new File(dir1);
            File fileDirs[] = fileDir.listFiles();
            
            for(int i=0;i<fileDirs.length;i++) {
                File fileIndexDir = fileDirs[i];
                if(fileIndexDir.isDirectory()) {
                    File fileLists[] = fileIndexDir.listFiles();
                    File fileMaskImg = new File(fileIndexDir.getPath()+"\label.png");
                    if(fileMaskImg.exists()) {
                        System.out.println(fileIndexDir.getName().replace("_json", ""));
                        File newFile = new File("D:\�ο��ֲ�\����\��ע-2019\train_data_20190227\cv2_mask\"+fileIndexDir.getName().replace("_json", "")+".png");
                        copyFile(fileMaskImg,newFile);
                    }
                }
                
                
            }
            
        }
        
        /**
         * �����ļ�
         * @param oldFile
         * @param newFile
         * @throws IOException
         */
        public static void copyFile(File oldFile,File newFile) throws IOException{
            FileInputStream fileInputStream = null;
            FileOutputStream fileOutputStream = null;
            try {
                fileInputStream = new FileInputStream(oldFile);
                fileOutputStream = new FileOutputStream(newFile);
                byte[] bytes = new byte[1024];
                int index=0;
                
                while((index=fileInputStream.read(bytes))!=-1) {
                    fileOutputStream.write(bytes, 0, index);
                }
            }catch(Exception e) {
                e.printStackTrace();
            }finally {
                fileOutputStream.close();
                fileInputStream.close();
            }
        }
    
    }
  • 相关阅读:
    查看mongodb的状态
    superset----缓存之redis
    superset--presto sql
    linux----之tcpdump小用
    Git版本回退的最佳方式
    SpringBoot 热部署
    不使用Tomcat,手写简单的web服务
    Spring Security 入门
    Maven总结
    git高级用法
  • 原文地址:https://www.cnblogs.com/herd/p/11531342.html
Copyright © 2011-2022 走看看