Java学习-IO流-打印流

                   IO流↙       ↘字节流              字符流↙      ↘            ↙  ↘
InputStream  OutputStream  Reader  Writer↓                  ↓PrintStream        PrintWriter字节打印流          字符打印流

注意:
1.打印流只操作文件目的地,不操作数据源
2.打印流拥有特有的方法,实现数据原样写出、自动刷新、自动换行

字节打印流

构造方法:
public PrintStream(OutputStream/File/String):关联字节输出流/文件/文件路径
public PrintStream(String fileName,Charset charset):指定字符编码
public PrintStream(OutputStream out,boolean autoFlush):自动刷新
public PrintStream(OutputStream out,boolean autoFlush,String encoding):指定字符编码且自动刷新

成员方法:
public void write(int b):常规方法:将指定的字节写出
public void println(Xxx xx):特有方法:打印任意数据,自动刷新,自动换行
public void print(Xxx xx):打印任意数据,不换行
public void printf(String format,Object… args):带有占位符的打印语句,不换行
注意: 字节打印流底层没有缓冲区,不需要开启自动刷新

PrintStream ps = new PrintStream(new FileOutputStream("..\\xx.txt"),true,Charset.forNmae("GBK"));
ps.println(97);//写出 + 自动刷新 + 自动换行
ps.print(true);
ps.printf("%s 爱上了 %s","阿珍","阿强");
ps.close();

xx.txt:97 \n true阿珍 爱上了 阿强

字符打印流

字符打印流底层有缓冲区,需要手动开启自动刷新
构造方法:
public PrintWriter(Writer/File/String):关联字节输出流/文件/文件路径
public PrintWriter(String fileName,Charset charset):指定字符编码
public PrintWriter(Writer w,boolean autoFlush):自动刷新
public PrintWriter(Writer w,boolean autoFlush,String encoding):指定字符编码且自动刷新

成员方法:
public void write(…):常规方法:写出字节或字符串
public void println(Xxx xx):特有方法:打印任意数据,自动换行
public void print(Xxx xx):打印任意数据,不换行
public void printf(String format,Object… args):带有占位符的打印语句

PrintWriter pw = new PrintWriter(new FileWriter("..\\xx.txt"),true);
pw.println("今天你终于叫我名字了,虽然叫错了,不过没关系,我马上改");
pw.print("你好你好");
pw.printf("%s 爱上了 %s","阿珍","阿强");
pw.close();

xx.txt:今天你终于叫我名字了,虽然叫错了,不过没关系,我马上改 \n 你好你好阿珍爱上了阿强

输出语句和打印流的关系

System.out.println()
public final class System{...}
public static final PrintStream out = null;
//获取打印流的对象,此打印流在虚拟机启动的时候由虚拟机创建,默认指向控制台
//打印流:标准输出流
PrintStream ps System.out;//调用打印流的方法println
//写出数据,自动换行,自动刷新
ps.println("123");//打印流不能关闭,在系统中是唯一的,如果关闭需要重启虚拟机
ps.close();
ps.println("你好你好");//不输出

打印流总结

1.打印流分字节打印流和字符打印流
2.打印流不操作数据源,只能操作目的地
3.字节打印流:默认自动刷新,特有的println自动换行
4.字符打印流:需要手动开启自动刷新,特有的println自动换行

Java学习-IO流-打印流相关推荐

  1. Java基础-22总结登录注册IO版,数据操作流,内存操作流,打印流,标准输入输出流,转换流,随机访问流,合并流,序列化流,Properties...

    你需要的是什么,直接评论留言. 获取更多资源加微信公众号"Java帮帮" (是公众号,不是微信好友哦) 还有"Java帮帮"今日头条号,技术文章与新闻,每日更新 ...

  2. Java基础-22总结登录注册IO版,数据操作流,内存操作流,打印流,标准输入输出流,转换流,随机访问流,合并流,序列化流,Properties

    你需要的是什么,直接评论留言. 获取更多资源加微信公众号"Java帮帮" (是公众号,不是微信好友哦) 还有"Java帮帮"今日头条号,技术文章与新闻,每日更新 ...

  3. Java——IO(打印流)

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

  4. JAVA学习 API_day10(缓冲流, 打印流, 对象流)

    缓冲流, 转换流, 打印流, 对象流 1. 缓冲流 1. 字节缓冲流 2. 字符缓冲流 2.打印流 1.字节打印流(了解) 2.字符打印流 3.对象流 1. 缓冲流 1. 字节缓冲流 包装 -> ...

  5. java学习--基础知识进阶第十天--标准输入流 转换流 打印流、对象操作流 、Properties集合...

    今日内容介绍 u  标准输入流 & 转换流 & 打印流 u  对象操作流 u  Properties集合 第1章 标准输入流 & 转换流 & 打印流 1.1 标准输入输 ...

  6. 【小白学Java】D32》》》IO流 之 序列化流 打印流

    [友情链接]➡➡▶IO流 之 File类 & 递归 [友情链接]➡➡▶IO流 之 过滤器 & 字节流 [友情链接]➡➡▶IO流 之字符流 & 属性集(Properties集合) ...

  7. Java IO流 - 打印流详细使用介绍

    文章目录 打印流 打印流基本使用 输出语句重定向 打印流 打印流基本使用 打印流: 作用:打印流可以实现更方便.更高效的打印数据到文件中去.打印流一般是指:PrintStream,PrintWrite ...

  8. 第十五章 IO流(转换流 字符流 字符缓冲流 打印流)

    Java基础15 第十五章 IO流(转换流 字符流 字符缓冲流 打印流) 15.1 字符编码和字符集 15.1.1 字符编码 15.1.2 字符集 15.1.3 String类getBytes()方法 ...

  9. IO流的字符流+对象流+打印流+内存流+随机访问流(2)

    IO流的字符流+对象流+打印流+内存流+随机访问流(2) 一.字符流 1.利用字符输出转换流 向文件写入数据 1.文件存在的情况 2.文件不存在的情况 经验:所有的输出流,当文件不存在时都会创建文件 ...

最新文章

  1. ActivityRouter 框架简单实用
  2. android studio没有org.apache.http.client.HttpClient;等包问题 解决方案
  3. Learning Rate--学习率的选择(to be continued)
  4. 创建BAPI程序的步骤
  5. 牛客 - 拿物品(贪心)
  6. 系统架构图怎么画_简历的项目经历应该怎么写得好看?
  7. 08_MySQL DQL_SQL99标准中的多表查询(内连接)
  8. [Zhuan]Lua about
  9. 适用于Photoshop的人像美容磨皮ps插件:Beauty Retouch Panel 2021 Mac
  10. 嵌入式linux基本指令,成都嵌入式开发之Linux常用命令大全
  11. 测试:fiddler使用
  12. 拼多多黄铮长文自述:用常识判断未来
  13. Out of resources when opening file './xxx.MYD' (Errcode: 24)解决方法
  14. centos 时间服务器ntp
  15. python代码实现自动登录
  16. matlab 图像尺度空间,SIFT算法MATLAB实现----尺度空间构造
  17. python画e指数函数_python绘制指数函数
  18. 360wifi驱动linux驱动安装,360WiFi驱动安装使用教程,详细图文版
  19. 举个栗子!Tableau 技巧(133):完整显示工具提示中的数据
  20. docker安装和入门教程

热门文章

  1. mkdirs php失败,mkdirs() 总失败,怎么办,多半...
  2. Matlab/simulink MW级别双馈风电机组并网仿真模型,kw级别永磁同步机PMSG并网仿真模型
  3. php stats红包算法,PHP红包算法
  4. 早教机器人AI化,人机联动成新风口
  5. 代码审计之WEBGOAT 反序列化
  6. 国庆节,零代码帮你搞定假期美食菜单
  7. Spring源码之getBean(获取 bean)方法(二)解读
  8. Python分析csv文件及可视化绘图
  9. 哈希表 - 解决哈希冲突(总结)
  10. 基于分形的山脉河流生成