我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Java I/O流之打印流详细使用方法教程

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Java I/O流之打印流详细使用方法教程

打印流

打印流基本使用

打印流:

作用:打印流可以实现更方便、更高效的打印数据到文件中去。打印流一般是指:PrintStream,PrintWriter两个类。

可以实现打印什么数据就是什么数据,例如打印整数97写出去就是97,打印boolean的true,写出去就是true。

打印流PrintStream构造器如下:

构造器说明
PrintStream(OutputStream os)打印流直接通向字节输出流管道
PrintStream(File f)打印流直接通向文件对象
PrintStream(String filepath)打印流直接通向文件路径

示例代码

public static void main(String[] args) throws Exception {
    // 方式一: 打印流通向字节输出流管道
    PrintStream ps1 = new PrintStream(new FileOutputStream("/Users/chenyq/Documents/test.txt"));

    // 方式二: 打印流通向文件对象
    PrintStream ps2 = new PrintStream(new File("/Users/chenyq/Documents/test.txt"));

    // 方式三: 打印流通向文件路径
    PrintStream ps3 = new PrintStream("/Users/chenyq/Documents/test.txt");
}

打印流PrintStream方法如下:

方法说明
print(Xxx xx)打印任意类型的数据出去(不换行)
println(Xxx xx)打印任意类型的数据出去(换行)

演示代码

public static void main(String[] args) throws Exception {
    PrintStream ps = new PrintStream(new FileOutputStream("/Users/chenyq/Documents/test.txt"));

    // 打印流方法
    ps.println(97);
    ps.println("aaa");
    ps.println(123);
    ps.println('我');
    ps.println(true);

    // 关闭流
    ps.close();
}

上面代码打印到文件中的内容如下:

打印流PrintWrite构造器如下

构造器说明
PrintWriter(OutputStream os)打印流直接通向字节输出流管道
PrintWriter (Writer w)打印流直接通向字符输出流管道
PrintWriter (File f)打印流直接通向文件对象
PrintWriter (String filepath)打印流直接通向文件路径

打印流PrintStream方法:

方法说明
print(Xxx xx)打印任意类型的数据出去(换行)
println(Xxx xx)打印任意类型的数据出去(不换行)

演示代码:

PrintWrite和PrintPrintStream在打印的使用上并无区别

public static void main(String[] args) throws Exception {
    PrintWriter pw = new PrintWriter(new FileOutputStream("/Users/chenyq/Documents/test.txt"));

    // 打印流方法
    pw.println(97);
    pw.println("aaa");
    pw.println(123);
    pw.println('我');
    pw.println(false);

    // 关闭流
    pw.close();
}

既然PrintStream和PrintWrite在打印上没有区别, 那这两个类的区别在哪里?

打印数据功能上是一模一样的,都是使用方便,性能高效(核心优势)

PrintStream继承自字节输出流OutputStream,支持写字节数据的方法。

PrintWriter继承自字符输出流Writer,支持写字符数据出去。

public static void main(String[] args) throws Exception {
    PrintStream ps = new PrintStream(new FileOutputStream("/Users/chenyq/Documents/test.txt"));

    // PrintStream写字节数据
    ps.write("我爱学习".getBytes());
}
public static void main(String[] args) throws Exception {
    PrintWriter pw = new PrintWriter(new FileOutputStream("/Users/chenyq/Documents/test.txt"));

    // PrintWrite写字符数据
    pw.write("我爱学习");
}

但是我们一般使用打印流, 都是打印数据到文件中去;

使用打印流我们基本不会用来写数据, 因为写数据我们直接使用字符输出流和字节输出流更好

使用打印流的小细节, 我们可以发现, 打印流默认也是覆盖管道, 打印的数据会覆盖原数据

如果我们想要打印数据为追加数据, 我们要在低级管道中开启追加模式, 打印流的过早其中没有提供追加数据的构造器

public static void main(String[] args) throws Exception {
    // 在原始字符输出流开启追加模式
    PrintWriter pw = new PrintWriter(new FileOutputStream("/Users/chenyq/Documents/test.txt", true));
}

输出语句重定向

输出语句重定向(了解)

属于打印流的一种应用,可以把输出语句System.out.println();的打印位置改到文件当中。

例如: 在项目的开发阶段我们是在控制台打印调试的, 我们希望项目上线后将输出语句打印到文件当中

public static void main(String[] args) throws Exception {
    PrintStream ps = new PrintStream("/Users/chenyq/Documents/test.txt");

    // 改变输出语句的位置(重定向), 将输出语句输出到文件当中
    System.setOut(ps);
    System.out.println("aaa");
    System.out.println(97);
    System.out.println(123);
    System.out.println('我');
}

总结

到此这篇关于Java IO流打印流详细使用的文章就介绍到这了,更多相关Java IO流打印流使用内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Java I/O流之打印流详细使用方法教程

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Java I/O流之打印流详细使用方法教程

java的io是实现输入和输出的基础,可以方便的实现数据的输入和输出操作,下面这篇文章主要给大家介绍了关于Java IO流打印流详细使用的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
2023-01-31

java使用Buffer进行I/O流操作的方法有哪些

小编给大家分享一下java使用Buffer进行I/O流操作的方法有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!使用Buffer进行I/O流操作除NIO外,使
2023-06-27

Java【算法 04】HTTP的认证方式之DIGEST认证详细流程说明及举例

HTTP的认证方式之DIGEST 1.是什么2.认值流程2.1 客户端发送请求2.2 服务器返回质询信息2.2.1 质询参数2.2.2 质询举例 2.3 客户端生成响应2.4 服务器验证响应2.5 服务器返回响应 3.算法
2023-08-17

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录