IO文件夹拷贝(文件内含有文件和文件夹)

 1 /**
 2      * 文件夹拷贝(文件内含有文件和文件夹)
 3      *
 4      * @param src
 5      * @param des
 6      */
 7     private static void copy(String src, String des) {
 8         File file1 = new File(src);
 9         File[] fs = file1.listFiles();
10         File file2 = new File(des);
11         if (!file2.exists()) {
12             file2.mkdirs();
13             for (File f : fs) {
14                 if (f.isFile()) {
15                     fileCopy(f.getPath(), des + "\\" + f.getName()); // 调用文件拷贝的方法
16                 } else if (f.isDirectory()) {
17                     copy(f.getPath(), des + "\\" + f.getName());
18                 }
19             }
20         }
21     }
22
23     /**
24      * 文件拷贝的方法
25      */
26     private static void fileCopy(String src, String des) {
27         BufferedReader br = null;
28         PrintStream ps = null;
29         try {
30             br = new BufferedReader(new InputStreamReader(new FileInputStream(src)));
31             ps = new PrintStream(new FileOutputStream(des));
32             String s = null;
33             while ((s = br.readLine()) != null) {
34                 ps.println(s);
35                 ps.flush();
36             }
37
38         } catch (FileNotFoundException e) {
39             e.printStackTrace();
40         } catch (IOException e) {
41             e.printStackTrace();
42         } finally {
43             try {
44                 if (br != null)
45                     br.close();
46                 if (ps != null)
47                     ps.close();
48             } catch (IOException e) {
49                 e.printStackTrace();
50             }
51         }
52     }
时间: 2024-10-29 19:10:37

IO文件夹拷贝(文件内含有文件和文件夹)的相关文章

#实现一个文件的拷贝功能,注意:大文件的问题

#实现一个文件的拷贝功能,import osdef copy(src,dst): #判断是否是同一文件 if os.path.abspath(src) == os.path.abspath(dst): print('地址相同,无法拷贝') return #判断源文件是否是文件 if os.path.isfile(src): print('不是文件怎么拷贝?') return #判断目标地址是否是目录 if os.path.isdir(dst): #提取原文件名字 src_name = os.pa

java 文件及文件夹拷贝

View.java package com.liang; import java.awt.Color; import java.awt.Dimension; import javax.swing.ButtonGroup; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JProgressBa

用C#实现文件夹拷贝

用C#实现文件夹拷贝 C#中没有拷贝整个文件夹的方法,最近需要用到,就写了一个Demo,拿出来跟大家分享一下 主要思想: 1.写一个拷贝文件夹的函数CopyFolder,传入源文件夹路径和目的文件夹路径 2.判断目的文件夹路径是否存在,如果不存在,创建此文件夹 3.获取源文件夹下的所有文件,拷贝这些文件到目的文件夹 4.获取源文件夹下的所有文件夹,循环调用CopyFolder(此处利用了递归) 代码: using System; using System.IO; namespace Folder

Eclipse 将工程Build Path中引用的jar包自动拷贝到WEB-INF下的lib文件夹下

在用用 Eclipse进行Java Web开发时,web应用中引用的jar需要拷贝到WEB-INF下的lib文件夹下,否则经常出现ClassNotFound异常. 通过下面方法,可以不用手动拷贝jar包,Eclipse自动将工程Build Path中引用的jar包自动拷贝到WEB-INF下的lib文件夹下,过程如下: 1.右击工程,选择Properties(属性) 选择Deployment Assembly,如下图: 2.点击右侧Add按钮,如下图: 3.选择Java Building Path

C# 文件夹拷贝

1 /// <summary> 2 /// 整个文件夹拷贝 3 /// </summary> 4 /// <param name="yanfilepath">源</param> 5 /// <param name="mudifilepath">目标</param> 6 public void CopyFilesDirs(string yanfilepath, string mudifilepat

JavaSE 文件递归之删除&amp;amp;获取文件夹文件夹中全部的以.jpg的文件的绝对路径

1.递归删除文件 假设一个文件夹以下还有子文件夹,进行删除的话会 报错,这个时候要使用递归的方式来删除这个文件文件夹中的全部文件以及文件夹 package cn.itcast.digui; import java.io.File; /** * 递归删除demo目录中全部文件包含目录 * 分析: * A:封装目录 * B:获取改目录下的全部文件或者目录 * C:遍历改file数组,得到每个File对象 * D:推断该file对象是都是目录 * 是:回到B * 否:删除 * @author Admi

CoreJava_线程并发(阻塞队列):在某个文件夹下搜索含有某关键字的文件

Java多线程编程是非常考验一个程序员水平的.传统的WEB程序中,因为框架提供了太多的健壮性.并发性.可靠性的支持,所以我们都是将所有的注意力放到了业务实现上.我们只是按照业务逻辑的要求,不停的积累自己的代码.因为知识,或者是经验的限制,经常出现了问题而不自知.例如,某些比较原始的项目中,并没有使用Spring等相对来说比较灵活健壮的框架.而是仅仅使用Servlet来作为服务端的实现方式. 举一个简单的栗子,众所周知,当请求到了容器,容器是创建并且启动了一个Servlet线程来对当前的请求作出相

利用文件的输入流输出流实现文件的拷贝

1 import java.io.FileInputStream; 2 import java.io.FileNotFoundException; 3 import java.io.FileOutputStream; 4 import java.io.IOException; 5 /** 6 * 利用文件的输入流输出流实现文件的拷贝: 7 * */ 8 public class TestFileOutputStream { 9 public static void main(String[] a

apk当安装程序将文件复制到手机自带的指定文件夹

项目已获得,今天.apk文件以获得另一个非调试手机,发现一个问题. 由于涂料.所以绘图数据的点存储在一个.txt文字档.把它用usb传到指定目录下的,可是明显不科学,由于用户下载了你的.apk文件,你却告诉他,还要把这个文本文件复制到指定的目录下.所以,我就要解决问题.就是把文本文件打包在apk文件里,安装.apk时就让创建一个程序目录.然后把文本文件复制到这个目录目录里,用户执行程序,就能够画图,不用再让他拷贝一份画图的点的坐标的数据.同理,事实上我这里还有设计轨廓的数据和标准轨廓的数据也是要