/*查看目录下所有的文件*/

  1. package cn.file;   
    
    import java.io.File;
    
    public class Text2 {
    public static void main(String[] args) {
    File a=new File("F:\\图片");
    File a1=new File("F:\\你的");
    chek(a1);
    }
    public static void chek(File f3) {//查看目录下的所有文件
    if(f3.exists()){
    if(f3.isDirectory()){
    File [] f=f3.listFiles();//查看目录的文件
    for(int i=0;i<f.length;i++){
    chek(f[i]);
    }
    }
    else {System.out.println(f3);};
    }
    }

    复制子目录

  • import java.io.BufferedInputStream;
    import java.io.BufferedOutputStream;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.FileReader;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.io.Reader;
    import java.io.Writer; //练习:关于目录的拷贝?
    public class Text6 {
    // 缓冲区大小
    private static final int buffer_size = 1024*2;
    // 源和目标检测
    private static void doCopy(File src, File dst)throws IOException {
    if (src.isFile()) {
    copyFile(src, dst);
    } else {
    File dir = copyDirectory(src, dst);
    File[] files = src.listFiles();
    if (files.length == 0) { } else {
    for (File file : files) {
    doCopy(file, dir);
    }
    }
    }
    }
    // 拷贝实现
    public static void copy(File src, File dst) throws IOException { doCopy(src, dst); }
    // 文件拷贝
    private static void copyFile(File src, File dst) throws IOException {
    File file = new File(dst, src.getName());
    copy(new BufferedInputStream(new FileInputStream(src)), new BufferedOutputStream(new FileOutputStream(file)));
    }
    // 目录拷贝 要在目标设备中创建目录
    private static File copyDirectory(File src, File dst) {
    File file = new File(dst, src.getName());
    file.mkdir();
    return file;
    }
    // 拷贝
    private static int copy(BufferedInputStream in, BufferedOutputStream out) throws IOException {
    int byteCount = 0; // 问号 byteCount
    try {
    int bytesReader = 0;
    byte [] buffer = new byte[buffer_size]; while ((bytesReader = in.read(buffer)) != -1) {
    out.write(buffer, 0, bytesReader);
    byteCount += bytesReader;
    }
    out.flush();
    } finally {
    in.close();
    out.close();
    }
    return byteCount;
    } public static void main(String[] args)throws IOException
    {
    File a=new File("F:\\测试的文件");
    File b=new File("F:\\我的");
    copy(a,b);
    System.out.println("finish.................");
    } }

    给文件改名

  • import java.io.BufferedInputStream;
    import java.io.BufferedOutputStream;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException; public class Text1{
    public static void main(String[] args)throws IOException {
    File a=new File("F:\\测试的文件\\我的");
    File b=new File("F:\\测试的文件\\我的");
    copyList(a,b); }
    public static void copyList(File a,File b )throws IOException{//第一步
    File c=a;
    BufferedInputStream bis=null;
    BufferedOutputStream bos=null;
    byte bs []=new byte [1024];
    if (!b.exists()){ //判断b的文件夹是否存在
    b.mkdir();
    }
    if(c.isDirectory()){
    File d [] =c.listFiles();//得到目录文件的数组
    if(d!=null){//判断文件目录是否为空
    for (int i=0;i<d.length;i++){
    copyList(d[i],b);//递归查询
    //System.out.println(d[i]);//查看目录里的文件
    if(d[i].isFile()){
    if(d[i].getName().endsWith(".jpg")){//根据条件判断的复制
    int rel=0;
    bis=new BufferedInputStream(new FileInputStream(d[i]));
    bos=new BufferedOutputStream(new FileOutputStream(new File(b,i+".jpg")));
    while((rel=bis.read(bs))!=-1){
    bos.write(bs, 0, rel);
    bos.flush();
    }
    bos.close();
    bis.close();
    d[i].delete();//复制后删去复制的文件 这样看起来像是剪切
    }
    }
    }
    }
    }else{System.out.println(c);}
    }
    }

    /**过滤后复制文件夹*/

  • import java.io.BufferedInputStream;
    import java.io.BufferedOutputStream;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException; //经典过滤方案 用到 iO流 递归
    public class Text4 {
    public static void print(File dir,File f2 )throws IOException{
    //判断鱼塘是否存在
    if (dir!=null){
    //判断鱼塘是否有鱼
    if (dir.isDirectory()){
    //把鱼塘里面所有东西装箱
    File f []=dir.listFiles();
    //判断箱子是否为空
    if (f!=null){
    //遍历箱子里面的东西
    for (int i=0;i<f.length;i++){
    //假如箱子里还有箱子就继续打开
    print(f[i],f2);
    if (f[i].isFile()){
    String name =f[i].getName();
    if(name.endsWith(".jpg")){
    BufferedInputStream bi=new BufferedInputStream(new FileInputStream(f[i]));
    BufferedOutputStream bo=new BufferedOutputStream(new FileOutputStream(new File(f2,f[i].getName())));
    int rel=0;
    byte [] bs=new byte [1024];
    while((rel=bi.read(bs))!=-1){
    bo.write(bs,0,rel);
    bo.flush();
    //f[i].delete();//复制后删去复制的文件 这样看起来像是剪切
    } } }
    }
    }else{//System.out.println(dir);
    };
    } }
    } public static void main(String[] args) throws IOException { File f1=new File("F:\\音乐");
    File f2=new File("D:\\速度1");
    print(f1,f2);
    System.out.println("复制成功");
    //print(new File("F:"+File.separator+"音乐")); //System.out.println("遍历文件夹");
    }
    }

    /*删除文件与文件夹*/

  • import java.io.File;
    import java.io.IOException; public class Text3 {
    public static void main(String[] args) throws IOException {
    File f=new File("F:\\我的");
    delect(f);
    }
    public static void delect(File s){
    File b []=null;
    if(s.exists()){//判读是否存在
    if(s.isDirectory()){//判断是不是目录
    b=s.listFiles();
    if(b!=null){
    for(int i=0;i<b.length;i++){
    if(b[i].isFile()){ //判断是不是目录
    b[i].delete();//删除子文件
    }else{
    delect(b[i]);//递归
    b[i].delete();}//删除子目录
    }
    }
    }else{s.delete();};
    s.delete();
    }
    }
    }

javaIo流实际应用的更多相关文章

  1. Java学习日记之 Java-IO流

    Java中的IO流在处理上分为字节流和字符流.字节流和字符流的区别 : 1.字节流读取的时候,读到一个字节就返回一个字节:  字符流使用了字节流读到一个或多个字节(中文对应的字节数是两个,在UTF-8 ...

  2. javaIO流实现读写txt文件

    javaIO流实现文件读写 文件写入: InputStreamReader BufferedReader 文件读取: FileOutputStream package javatest.basic22 ...

  3. JavaIO流中的拷贝

    JavaIO流中对数据的操作尤为重要,掌握了基本的拷贝操作,才能将各种数据源的操作联系起来. 先来看看对文件夹的拷贝吧: /** * 利用递归实现文件夹的拷贝操作 * 分析:判断 * 是文件:调用拷贝 ...

  4. JavaIO 流(1)IO流介绍

    IO流定义: 流的本质是一组单向有序,分起始和终止的数据传输过程.需要导入import java.io.* IO流分类: 按数据类型分为:字节流和字符流 字节流: 按字节进行读取(可以处理任意类型数据 ...

  5. Java基础 Java-IO流 深入浅出

    建议阅读 重要性由高到低 Java基础-3 吃透Java IO:字节流.字符流.缓冲流 廖雪峰Java IO Java-IO流 JAVA设计模式初探之装饰者模式 为什么我觉得 Java 的 IO 很复 ...

  6. 完美解决JavaIO流报错 java.io.FileNotFoundException: F:\ (系统找不到指定的路径。)

    完美解决JavaIO流报错 java.io.FileNotFoundException: F:\ (系统找不到指定的路径.) 错误原因 读出文件的路径需要有被拷贝的文件名,否则无法解析地址 源代码(用 ...

  7. JavaIO流(输入输出操作)

    Java中执行输出和输入操作,需要通过IO流.例如最常见的System.out.println()就是一个输出流.IO流的类比较多,但核心体系就是由File. InputStream .OutputS ...

  8. javaIO -- 流的体系设计思路、基础分类

    一.流 1. 流的含义 在程序设计中,流是对于数据流动传输的一种抽象描述任何有能力产出数据的数据源,或者有能力接受数据的接收端对象都是一个流. 2. 流的源和目的 数据可能从本地文件读取,或者写入,  ...

  9. JavaIO流文件的操作总结

    IO流的分类 1.根据数据的流向: 输入流:用来读数据,如从外界设备读数据到内存中: 输出流:用来写数据,如从内存输出数据到外界存储设备: 2.根据数据流的格式: 字节流:一般用于声音或者秃瓢等二进制 ...

随机推荐

  1. HW2.15

    public class Solution { public static void main(String[] args) { double rate = 0.05; double balance ...

  2. SpringTest 使用说明 -构建无污染纯绿色事务测试框架 (记录用)

    @ContextConfiguration({"classpath:applicationContext.xml","classpath:spring/buyer/app ...

  3. What does enumerable mean?

    I was directed to MDN's for..in page when it said, "for..in Iterates over the enumerable proper ...

  4. javascript如何判断一个对象是否是窗口

    <!DOCTYPE html> <html> <head> </head> <body> <script type="tex ...

  5. DAS 原文出自【比特网】

    http://www.360doc.com/content/13/1114/11/10504424_329109113.shtml

  6. 为虚机分配指定的IP

    在新建虚机的时候,在此处指定IP,则虚机创建完成后,会使用该IP(需要在地址池范围内)

  7. linux jmail乱码

    在Windows 里面,标题和内容都正常, 在linux里面,--- 1.字符串 more /etc/sysconfig/i18n   export LANG=en_US.UTF-8 ====默认是e ...

  8. Entity Framework 教程(转)

    预备知识    2 LINQ技术    2 LINQ技术的基础 - C#3.0    2 自动属性    2 隐式类型    2 对象初始化器与集合初始化器    3 匿名类    3 扩展方法    ...

  9. 開始Unity3D的学习之旅

    前言:这个系列的文章纯属对自己学习的整理,非高手之作.但确实的记载了我作为一个没接触过3D游戏编程的大学生的心路历程.争取每周整理一次吧.之所以会開始学Unity3D,最基本的原因是由于在快放暑假的时 ...

  10. Android两个控件叠在一起,如何让被挡住的控件显示出来

    Android两个控件叠在一起,如何让被挡住的控件显示出来 问题 : 两个控件叠在一起,如何让被挡住的控件显示出来? 比如A,B两个控件,A被B挡住,目前A要显示出来,B不能被隐藏,A的高度只有那么一 ...