字节流:
FileInputStream
FileInputStream fIn = new FileInputStream("1.avi");  
FileOutputStream(默认覆盖)
FileOutputStream fOut = new FileOutputStream("2.avi");
BufferedInputStream
BufferedInputStream fIn = new BufferedInputStream(new FileInputStream("1.avi"));  
BufferedOutputStream
BufferedOutputStream fOut = new BufferedOutputStream(new FileOutputStream("2.avi")); 
字符流:
FileReader
FileReader fr = new FileReader("1.avi");  
FileWriter (默认覆盖)
FileWriter fw = new FileWriter("2.avi");  
BufferedReader
BufferedReader reader = new BufferedReader(new FileReader("1.avi"));  
BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream("1.avi")));  
BufferedWriter
BufferedWriter writer = new BufferedWriter(new FileWriter("2.avi"));  
BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("2.avi")));  
转换流(字节流转换成字符流)(默认为GBK编码)
InputStreamReader
InputStreamReader reader = new InputStreamReader(new FileInputStream("1.avi"));  
OutputStreamWriter
OutputStreamWriter writer = new OutputStreamWriter(new FileOutputStream("2.avi"));  
数据流:(可读写带类型的数据)
注意:要使用该流读取数据,必须提前知道该文件中数据的存储格式和顺序。读的顺序必须和写入的顺序相同。
DataInputStream
DataInputStream in= new DataInputStream(new FileInputStream("1.avi"));  
DataOutputStream
DataOutputStream out = new DataOutputStream(new FileOutputStream("2.avi"));  
对象流:
ObjectInputStream
ObjectOutputStream 
打印流:(主要用来记录日志,通过改变系统自带的流的输出方向来实现)
PrintWriter//标准的输出流(字符流)
PrintStream //标准的输出流(默认输出到控制台)
        PrintStream ps = System.out;

ps.println("JAVA。。。。");

用系统打印流记录日志:
        //默认是输出到控制台的.
        System.out.println("HelloWorld!");
 
        PrintStream ps = System.out;
        ps.println("JAVA。。。。");
 
        //可以改变输出方向.
        System.setOut(new PrintStream(new FileOutputStream("log")));  //log日志文件
 
        //再次输出
        //System.out.print("HAHA");//此时已经改变了输出方向,"HAHA"将会记录到日志文件中!
 
        //通常使用上面的这种方式记录日志.
        //需求:记录日志,m1方法开始执行的时间和结束的时间.记录到log文件中.
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS");
        System.out.println("m1方法开始执行 "+sdf.format(new Date()));
        m1();

System.out.println("m1方法执行结束 "+sdf.format(new Date()));

 
 
 
 

8.23.4 IO-输入输出16个流的更多相关文章

  1. io系列之字符流

    java中io流系统庞大,知识点众多,作为小白通过五天的视频书籍学习后,总结了io系列的随笔,以便将来复习查看. 本篇为此系列随笔的第一篇:io系列之字符流. IO流 :对数据的传输流向进行操作,ja ...

  2. Java之IO输入输出

    首先介绍File类: 我们直接上代码: package com.learn.chap10.sec02; import java.io.File; import java.io.IOException; ...

  3. C++(四十六) — 异常处理机制、标准IO输入输出

    1.异常处理机制 一般来说,异常处理就是在程序运行时对异常进行检测和控制.而在C++ 中,使用 try-throw-catch模式进行异常处理的机制. #include<iostream> ...

  4. IO库----IO类,文件输入输出,string流

    一.IO类 1.IO库类型和头文件表: 头文件 类型 iostream istream,wistream 从流读取数据 ostream,wostream 向流写入数据 iostream,wiostre ...

  5. 16、IO (Properties、序列化流、打印流、CommonsIO)

    Properties集合的特点 * A: Properties集合的特点 * a: Properties类介绍 * Properties 类表示了一个持久的属性集.Properties 可保存在流中或 ...

  6. IO流16 --- 对象流操作字符串 --- 技术搬运工(尚硅谷)

    序列化 @Test public void test12() throws IOException { ObjectOutputStream oos = new ObjectOutputStream( ...

  7. Java基础(十二)IO输入输出

    一.IO 概述 1.IO 概念 IO:I 代表 Input 输入:O 代表 Output 输出. Java 中 IO 是以流为基础进行输入输出,所有的数据被串行化(保存)写入输出流,或者从输入流读入. ...

  8. Java IO 字节流与字符流 (五)

    Java的IO流分为字符流(Reader,Writer)和字节流(InputStream,OutputStream),字节流顾名思义字节流就是将文件的内容读取到字节数组,然后再输出到另一个文件中.而字 ...

  9. Java IO 字节流与字符流 (三)

    概述 IO流用来处理设备之间的数据传输 Java对数据的操作时通过流的方式 Java用于操作流的对象都在IO包中 流按操作的数据分为:字节流和字符流 流按流向不同分为:输入流和输出流 IO流常用基类 ...

随机推荐

  1. memcache 细究(一)

    memcached是高性能的分布式的内存缓存服务器.由国外社区网站LIVEJOURNAL的开发团队开发. 使用目的: 通过缓存数据库查询结果,减少数据库的访问次数,以提高动态web应用的速度.提高可扩 ...

  2. 英语曰曰曰No.523

    ---恢复内容开始--- [一句话新闻] The iPhone's 10th Anniversary:Can Apple Revive Its iPhone Sales ? 1.A look back ...

  3. 华为OJ之最长公共子序列

    题目描述: 对于两个给定的字符串,给出他们的最长公共子序列. 题目分析: 1,在之前的博文(http://www.cnblogs.com/yonguo123/p/6711360.html)中我们讨论了 ...

  4. Work 1(导游类)(2017.06.27)

  5. Java 9 揭秘(14. HTTP/2 Client API)

    Tips 做一个终身学习的人. 在此章中,主要介绍以下内容: 什么是HTTP/2 Client API 如何创建HTTP客户端 如何使HTTP请求 如何接收HTTP响应 如何创建WebSocket的e ...

  6. Jenkins2 实现持续交付初次演练(MultiJob,Pipeline,Blue Ocean)

    背景 项目需要用到自动部署,但可获取外网的节点机器只有一台,那只能同过主节点机器进行构建完成然后分发至对应服务器进行启动更新. 目前已尝试过三种方式: 1.Pipeline-Trigger param ...

  7. 记录Centos一些坑

    首先说一下写这篇博客的初衷. 最近去客户现场出差,搭建一套服务端的自动构建环境. 准备支持的环境有CentOS 7.5.java8.Tomcat 8.maven3.3.9.TBA 2.1.9.4 等等 ...

  8. 【Log4j】分包,分等级记录日志信息

    在开发中我们经常会将不同包下的日志信息在不同的地方输出,以便于以后出问题能够直接在对应的文件中找到对应的信息! 例如:在spring+SpringMVC+mybatis的框架中,我们经常会将sprin ...

  9. http post,get,put,delete区别(收集整理)

    摘要: 这篇文章想从restful角度来分析下http的方法get,post,put,delete的区别.先暂时收集下资料~~~ 一 Http 规范中的get与post 根据 HTTP 规范,GET  ...

  10. 关于解决mysql数据库乱码的问题

    最近在开发的过程中频繁的使用到了mysql'这款数据库,mysql的中文乱码问题一直让人头疼.以前遇到过几次,但是都一不小心就解决了,这次终于明白到底是怎么回事了.可能我下面手的这种解决方案只适合于我 ...