一 打印流

1.打印流的概述

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

打印流根据流的分类:

  字节打印流 PrintStream

  字符打印流 PrintWriter

方法:

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

  void println(String str): 输出任意类型的数据,自动写入换行操作

代码演示:

 /*
* 需求:把指定的数据,写入到printFile.txt文件中
*
* 分析:
* 1,创建流
* 2,写数据
* 3,关闭流
*/
public class PrintWriterDemo {
public static void main(String[] args) throws IOException {
//创建流
//PrintWriter out = new PrintWriter(new FileWriter("printFile.txt"));
PrintWriter out = new PrintWriter("printFile.txt");
//2,写数据
for (int i=0; i<5; i++) {
out.println("helloWorld");
}
//3,关闭流
out.close();
}
}

2.打印流完成数据自动刷新

可以通过构造方法,完成文件数据的自动刷新功能

构造方法:

开启文件自动刷新写入功能

  public PrintWriter(OutputStream out, boolean autoFlush)

  public PrintWriter(Writer out, boolean autoFlush)

代码演示:

 /*
* 分析:
* 1,创建流
* 2,写数据
*/
public class PrintWriterDemo2 {
public static void main(String[] args) throws IOException {
//创建流
PrintWriter out = new PrintWriter(new FileWriter("printFile.txt"), true);
//2,写数据
for (int i=0; i<5; i++) {
out.println("helloWorld");
}
//3,关闭流
out.close();
}
}

二 commons-IO

1.FileUtils

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

  常用方法:

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

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

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

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

代码演示:

/*
* 完成文件的复制
*/
public class CommonsIODemo01 {
public static void main(String[] args) throws IOException {
//method1("D:\\test.avi", "D:\\copy.avi"); //通过Commons-IO完成了文件复制的功能
FileUtils.copyFile(new File("D:\\test.avi"), new File("D:\\copy.avi"));
} //文件的复制
private static void method1(String src, String dest) throws IOException {
//1,指定数据源
BufferedInputStream in = new BufferedInputStream(new FileInputStream(src));
//2,指定目的地
BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(dest));
//3,读
byte[] buffer = new byte[1024];
int len = -1;
while ( (len = in.read(buffer)) != -1) {
//4,写
out.write(buffer, 0, len);
}
//5,关闭流
in.close();
out.close();
}
} /*
* 完成文件、文件夹的复制
*/
public class CommonsIODemo02 {
public static void main(String[] args) throws IOException {
//通过Commons-IO完成了文件复制的功能
FileUtils.copyFile(new File("D:\\test.avi"), new File("D:\\copy.avi")); //通过Commons-IO完成了文件夹复制的功能
//D:\基础班 复制到 C:\\abc文件夹下
FileUtils.copyDirectoryToDirectory(new File("D:\\基础班"), new File("C:\\abc"));
}
}

java 打印流与commons-IO的更多相关文章

  1. JAVA 打印流与转换流

    转换流主要有两个 InputStreamReader 和 OutputStreamWriter 1. InputStreamReader 主要是将字节流输入流转换成字符输入流 2. OutputStr ...

  2. java 打印流 递归复制子文件子文件夹 不同编码文件复制到同一文件中 序列化流反序列化流

    package com.swift.jinjie; import java.io.BufferedInputStream; import java.io.File; import java.io.Fi ...

  3. Java打印流学习

    打印流 打印流的主要功能是用于输出,在整个IO包打印流分为两种类型,打印流可以很方便的进行输出. 1.字节打印流:PrintStream(在字节输出时,可以增强输出功能) 2.字符打印流:PrintW ...

  4. java 打印流

    (只有两个,PrintWriter和PrintStream) 思考:如果现在要想完成一个字符串或者是boolean型或者是字符型的数据输出使用OutputStream是否方便? 肯定是不方便的,因为O ...

  5. java 打印流(PrintStream)

    打印流(PrintStream):打印流可以打印任意类型的数据,而且打印流在打印数据之前会将数据转为字符串在进行打印 PrintStream可以接受文件和其他字节输出流,所以打印流是对普通字节输出流的 ...

  6. Java 字符流与基本IO

    字符流基类 java.io包中专门用于字符流处理的类,是以 Reader 和 Writer 为基础派生的一系列类.字符流以字符为单位,根据码表映射字符,一次可能读多个字节,只能处理字符类型的数据.Re ...

  7. Java学习笔记43(打印流、IO流工具类简单介绍)

    打印流: 有两个类:PrintStream,PrintWriter类,两个类的方法一致,区别在于构造器 PrintStream:构造方法:接收File类型,接收字符串文件名,接收字节输出流(Outpu ...

  8. Java学习笔记33(IO:打印流,IO流工具类)

    打印流: 有两个类:PrintStream     PrintWriter类,两个类的方法一样,构造方法不一样 PrintStream构造方法:接收File类型,接收字符串文件名,接收字节输出流(Ou ...

  9. Java:IO流其他类(字节数组流、字符数组流、数据流、打印流、Properities、对象流、管道流、随机访问、序列流、字符串读写流)

    一.字节数组流: 类 ByteArrayInputStream:在构造函数的时候,需要接受数据源,而且数据源是一个字节数组. 包含一个内部缓冲区,该缓冲区包含从流中读取的字节.内部计数器跟踪 read ...

随机推荐

  1. gvim使用总结

    我的gvim配置 set nocompatible " 关闭vi兼容 " 显示相关 set go= set number set cursorline set nowrap set ...

  2. bzoj1680[Usaco2005 Mar]Yogurt factory*&&bzoj1740[Usaco2005 mar]Yogurt factory 奶酪工厂*

    bzoj1680[Usaco2005 Mar]Yogurt factory bzoj1740[Usaco2005 mar]Yogurt factory 奶酪工厂 题意: n个月,每月有一个酸奶需求量( ...

  3. Python 为什么只需一条语句“a,b=b,a”,就能直接交换两个变量?

    从接触 Python 时起,我就觉得 Python 的元组解包(unpacking)挺有意思,非常简洁好用. 最显而易见的例子就是多重赋值,即在一条语句中同时给多个变量赋值: >>> ...

  4. JavaScript动画实例:旋转的正三角形

    给定一个正三角形的重心坐标为(x0,y0),高为h,可以用如下的语句绘制一个底边水平的正三角形. ctx.beginPath(); ctx.moveTo(x0,y0-h*2/3); ctx.lineT ...

  5. Python 实现邮件发送功能(进阶)

    上篇文章已经介绍了利用Python发送文本消息的用法,也在文末遗留了如何发送图片和附件的问题,本章主要来回答这两个问题.   本章主要包含知识点: 1. 如何将图片放到邮件主体中发送 2. 如何发送附 ...

  6. 2.UDP协议

    UDP只在IP数据报服务之上增加了很少功能,即复用分用和差错检测功能. 应用层给UDP多长的报文,UDP就照样发送,即一次发送一个完整报文 一.UDP首部格式 这里的长度是指(首部+数据) UDP校验 ...

  7. create-react-app中的babel配置探索

    版本 babel-loader version:"8.1.0" create-react-app:"3.4.1" 三个配置 第一部分: { test: /\.( ...

  8. 2020JAVA最新应对各种OOM代码样例及解决办法

    引言 作者:黄青石 链接:https://www.cnblogs.com/huangqingshi/p/13336648.html?utm_source=tuicool&utm_medium= ...

  9. Prime Ring Problem--------多重循环用递归来做

    链接:https://vjudge.net/problem/UVA-524 题意:给出正整数n,输出以1开头,由2到n组合的字符序列,使相邻的数相加为素数,最后一个(关键信息为n大于1小于等于16), ...

  10. java排序方式对比

    尽量使用使用Comparator进行排序, 在java中,要想给数据进行排序,有两种事项方式, 一种为实现Comparable接口, 一种是实现Comparator接口, public interfa ...