从文件夹中复制指定的文件到另一个文件夹

1、以下方法均在A类中

/**
*localPath:源文件夹的路径
*filterIrpFileFolderPath:存放复制后的文件的路径
*fileType:过滤要复制的文件的条件
*/
private
void filterIrpFiles(String localPath, String filterIrpFileFolderPath, String fileType) { if (StringUtil.isEmpty(localPath) || StringUtil.isEmpty(filterIrpFileFolderPath)) { return; } File folder = new File(localPath); if (!folder.exists()) { return; } File[] files = folder.listFiles(); if (null == files) { return; } // 创建文件夹 File dir = new File(filterIrpFileFolderPath); if (!dir.exists()) { dir.mkdirs(); } for (File file : files) { if (!file.isFile()) { continue; } if (!file.getName().trim().contains(fileType)) { continue; } copyFile(filterIrpFileFolderPath, file); } }
private void copyFile(String filterIrpFileFolderPath, File file)
    {
        InputStream is = null;
        OutputStream os = null;
        try
        {
            File osFile = new File(filterIrpFileFolderPath + File.separator + file.getName().trim());
            if (!osFile.exists())
            {
                osFile.createNewFile();
            }
            is = new FileInputStream(file);
            os = new FileOutputStream(osFile);
            byte[] flush = new byte[1024];
            int len = -1;

            while((len = is.read(flush)) != -1)
            {
                os.write(flush, 0, len);
            }
       // 刷新缓存
            os.flush();
        }
        catch (IOException e)
        {
            logger.error(e);
        }
        finally
        {
            if (os != null) {
                try {
                    os.close();
                } catch (IOException e) {
                    log.error(e);
                }
            }
            if (is != null) {
                try {
                    is.close();
                } catch (IOException e) {
                    log.error(e);
                }
            }
        }
    }

TEST:

public static void main(String[] args)
{
    A a= new A();
    a.filterIrpFiles("D:\\AX_EDI\\HaviToGodiva", "D:\\EC_EDI\\HaviToGodiva", "DC");
}

猜你喜欢

转载自www.cnblogs.com/byqin/p/12515313.html