掌握打印流的操作

掌握格式化输出

1、打印流

在整个 IO 包中,打印流是输出信息最方便的类,主要包含字节打印流(PrintStream) 和字符打印流(PrintWriter) . 打印流提供了非常方便的打印功能,可以打印任何的数据类型,例如: 小数、整数、字符串等等。

回顾:之前在打印信息的时候需要使用OutputStream, 但是这样一来,所有的数据输出的时候会非常的麻烦, String --> byte[], 打印流中可以方便的进行输出。

在这个类中定义了很多print() 或println() 方法。System.out.println(), 此方法可以打印任何数据类型。

构造方法:

public PrintStream(OutputStream out) -->指定输出位置。

此构造方法接收OutputStream 的子类。

使用 PrintStream 输出信息

import java.io.* ;
public class PrintDemo01{public static void main(String arg[]) throws Exception{PrintStream ps = null ;        // 声明打印流对象// 如果现在是使用FileOuputStream实例化,意味着所有的输出是向文件之中ps = new PrintStream(new FileOutputStream(new File("d:" + File.separator + "test.txt"))) ;ps.print("hello ") ;ps.println("world!!!") ;ps.print("1 + 1 = " + 2) ;ps.close() ;}
};

也就是说此时,实际上是将FileOutputStream 类的功能包装了一下。这样的设计在JAVA中称为装饰设计。

2、格式化输出

如果学习过其他语言,比较代表性的就是C语言。

import java.io.* ;
public class PrintDemo02{public static void main(String arg[]) throws Exception{PrintStream ps = null ;        // 声明打印流对象// 如果现在是使用FileOuputStream实例化,意味着所有的输出是向文件之中ps = new PrintStream(new FileOutputStream(new File("d:" + File.separator + "test.txt"))) ;String name = "李兴华" ;   // 定义字符串int age = 30 ;             // 定义整数float score = 990.356f ;    // 定义小数char sex = 'M' ;          // 定义字符ps.printf("姓名:%s;年龄:%d;成绩:%f;性别:%c",name,age,score,sex) ;ps.close() ;}
};


如果,觉得以上的要写很多%s、%d 无法记住的话呢,实际上也可以简单操作,全部使用%s表示。

import java.io.* ;
public class PrintDemo03{public static void main(String arg[]) throws Exception{PrintStream ps = null ;        // 声明打印流对象// 如果现在是使用FileOuputStream实例化,意味着所有的输出是向文件之中ps = new PrintStream(new FileOutputStream(new File("d:" + File.separator + "test.txt"))) ;String name = "李兴华" ;   // 定义字符串int age = 30 ;             // 定义整数float score = 990.356f ;    // 定义小数char sex = 'M' ;          // 定义字符ps.printf("姓名:%s;年龄:%s;成绩:%s;性别:%s",name,age,score,sex) ;ps.close() ;}
};

总结:

1、PrintStream 可以方便的完成输出的功能。

2、在以后的输出中基本上都使用PrintStream 完成,因为比较方便一些。

3、PrintStream 属于装饰设计模式。

Java IO _打印流相关推荐

  1. Java——IO(打印流)

    1,打印字节流(PrintStream)的概述: 打印流可以很方便的将对象的toString()结果输出并且自动加上换行,而且可以使用自动刷出的模式 System.out就是一个PrintStream ...

  2. Java IO: 其他字符流(下)

    转载自   Java IO: 其他字符流(下) 作者: Jakob Jenkov 译者: 李璟(jlee381344197@gmail.com) 本小节会简要概括Java IO中的PushbackRe ...

  3. java IO之 序列流 集合对象Properties 打印流 流对象

    序列流 也称为合并流. SequenceInputStream 序列流,对多个流进行合并. SequenceInputStream 表示其他输入流的逻辑串联.它从输入流的有序集合开始,并从 第一个输入 ...

  4. 复习Java字节流_字符流使用及案例

    字节流_字符流 主要内容 IO流 字节流 字符流 异常处理 Properties 第一章 IO概述 1.1 什么是IO 生活中,你肯定经历过这样的场景.当你编辑一个文本文件,忘记了ctrl+s ,可能 ...

  5. Java IO 之 介质流

    2019独角兽企业重金招聘Python工程师标准>>> 自己工作虽有将近三年了,也算得上是一个程序老手了,但对IO这块一直一知半解,以至于每次写IO相关的代码时,总不能随心所欲的写出 ...

  6. java IO(输入输出) 字符流

    //读取文件中的字符 package zhi_jie_liu;import java.io.*;public class Example08 {public static void main(Stri ...

  7. 系统学习 Java IO (六)----管道流 PipedInputStream/PipedOutputStream

    目录:系统学习 Java IO---- 目录,概览 PipedInputStream 类使得可以作为字节流读取管道的内容. 管道是同一 JVM 内的线程之间的通信通道. 使用两个已连接的管道流时,要为 ...

  8. java io异常处理_IO流异常处理

    import java.io.File; import java.io.FileOutputStream; import java.io.IOException; /* *IO流异常处理 *try c ...

  9. Java数据流和打印流

    数据流 DataInputStream和DataOutputStream两个类创建的对象分别被称为数据输入流和数据输出流.这是 很有用的两个流,它们允许程序按与机器无关的风格读写Java数据.所以比较 ...

  10. 【java笔记】打印流printStream

    printStream打印流: 继承了OutPutStream 1.只负责输出,不负责读取. 2.不抛出IOException 3.特有的方法:print/printLn(任意类型的值) 构造方法: ...

最新文章

  1. LeetCode 148. Sort List--面试算法题--C++,Python解法
  2. 表 合并字段_多工作表动态合并,其实很简单
  3. 【JavaSE03】Java中分支语句-概念
  4. docker 容器日志集中 ELK + filebeat
  5. eos 源代码学习笔记一
  6. Android studio 常用快捷键的使用
  7. 虚拟机 ----- 最小安装如何安装设置ip ,并启用ifconfig命令
  8. GICv3驱动初始化
  9. 笔记本显示未连接录音服务器,电脑显示未安装音频设备怎么办?
  10. SQL数据库学习总结
  11. 斐波那契数列(费氏数列)
  12. LCA的 Trajan 算法
  13. sublime教程以及python环境的配置(二)常用插件安装和Boxy主题配置
  14. .Net框架搭建之辅助模版代码生成工具
  15. SD卡插入笔记本时显示位置不可用无法访问介质受写入保护请问怎样才能修复???
  16. [OGeek2019 Final]OVM
  17. DELL服务器 RAID 配置详解
  18. cookie 、localStorage 和 sessionStorage 区别
  19. chrome浏览器安全检查_为您的Chrome浏览器检查皮肤
  20. JS中本地存储的方式有哪些?

热门文章

  1. 计算机维吾尔语键盘用法,超实用丨手机电脑如何安装、使用维吾尔语输入法
  2. php 车牌号,总结关于车牌注意点
  3. python国际象棋ai程序_开源|手把手教你实现简易的国际象棋AI(附源码)
  4. 恶搞代码——vbs进程
  5. AD封装库大全免费分享
  6. 第十届蓝桥杯B组C/C++省赛编程题题目及答案解析
  7. 空间权重矩阵构建(Stata代码)
  8. 计算机二级c语言程序设计答题流程,计算机二级C语言上机考试操作步骤及流程.doc...
  9. 怎么清理ug10注册表_注册表清理优化工具用它就够了,赶紧上车!
  10. CoolFire系列讲座 第7讲