打印流+commons-io

打印流

打印流的概述

打印流添加输出数据的功能,使它们能够方便地打印各种数据值表示形式.

打印流根据流的分类:

字节打印流 :PrintStream

字符打印流 :PrintWriter

方法:

void print(String str): 输出任意类型的数据,

void println(String str): 输出任意类型的数据,自动写入换行操作,此方法简化了字符缓冲流中的newLine()方法,不用遍历使用,可以直接输出,提高效率

打印流:

分析:

 * 1,创建流

 * 2,写数据

 * 3,关闭流

public static void main(String[] args) throws IOException {
        // 明确数据源
        FileReader fr=new FileReader("E:\io1127\hello.txt");
        //
        BufferedReader br=new BufferedReader(fr);
        //明确目的地
        FileWriter fw=new FileWriter("E:\io1127\hello2.txt");
        //
        PrintWriter pw=new PrintWriter(fw,true);
        //开始复制
        String line=null;
        while((line=br.readLine())!=null){
            pw.println(line);
        }        
        //释放资源
        br.close();
        pw.close();
    }

 commons-IO

首先要加入classpath的第三方jar包内的class文件才能在项目中使用

创建lib文件夹

commons-io.jar拷贝到lib文件夹

右键点击commons-io.jarBuild PathAdd to Build Path结束

FilenameUtils

这个工具类是用来处理文件名(包含文件路径)的,他可以轻松解决不同操作系统文件名称规范不同的问题

常用方法:

getExtension(String path):获取文件的扩展名;

getName(String filename):获取文件名;

isExtension(String fileName,String ext):判断fileName是否是ext后缀名;

用以判定两个文件是否以相同扩展名结尾   getExtension()方法

public static void main(String[] args) {
        // 获取拓展名
        String ext=FilenameUtils.getExtension("E:\io1127\hello.txt");
        System.out.println(ext);
        //或取文件名
        String name=FilenameUtils.getName("E:\io1127\jdk.zip");
        System.out.println(name);
        //判断文件是否以某后缀扩展名结尾
        boolean flag=FilenameUtils.isExtension(name, ext);
        System.out.println(flag);
    }
结果:
txt
jdk.zip
false

 FileUtils

提供文件操作(移动文件,读取文件,检查文件是否存在等等)的方法。

常用方法:

readFileToString(File file):读取文件内容,并返回一个String;

writeStringToFile(File file,String content):将内容content写入到file中;

copyDirectoryToDirectory(File srcDir,File destDir);文件夹复制

copyFile(File srcFile,File destFile);文件复制

文件复制:

此方法可以将io1127文件复制到E盘下demo文件夹下的io1127文件夹,相比字符流中单字节复制与字节数组或者缓冲流方法的速度,这样的方法时间更短,效率更高

public static void main(String[] args) throws IOException {
        //
        FileUtils.copyDirectoryToDirectory(new File("E:\io1127"), new File("E:\demo"));
    }
原文地址:https://www.cnblogs.com/xinzong/p/14462623.html