IO流 之 打印流( PrintStream 和 PrintWriter )

2023-10-06 20:15

本文主要是介绍IO流 之 打印流( PrintStream 和 PrintWriter ),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

打印流可以实现更加方便的打印数据出去,可以实现打印啥就是啥

PrintStream字节打印流

在这里插入图片描述
代码演示,将字符串和其他类型,打印到f.txt文件中。

package day0927;import java.io.FileNotFoundException;
import java.io.PrintStream;
import java.nio.charset.Charset;public class demo13 {public static void main(String[] args) {try (PrintStream printStream= new PrintStream("src/f.txt");){printStream.println(97);printStream.println("你好");printStream.println('a');printStream.println(true);printStream.println(83.23);//通过write写的是一个a,因为wrtie是写字节流的数据,而println是将内容完整打印到目标文件printStream.write(97);} catch (Exception e) {throw new RuntimeException(e);}}
}

通过write(97)写的是一个 a,因为wrtie是写字节流的数据,而println(97)是将内容完整打印到目标文件。
结果:
在这里插入图片描述

PrintWrite字符打印流

在这里插入图片描述
代码演示,将字符串和其他类型,打印到g.txt文件中。

package day0927;
import java.io.PrintWriter;public class demo13 {public static void main(String[] args) {try (PrintWriter printStream= new PrintWriter("src/g.txt");){printStream.println(97);printStream.println("你好");printStream.println('a');printStream.println(true);printStream.println(83.23);
//通过write写的是asdf,因为wrtie是写字符流的数据,而println是将内容完整打印到目标文件printStream.write("asdf");} catch (Exception e) {throw new RuntimeException(e);}}
}

两者的区别:

在这里插入图片描述

应用

在这里插入图片描述
可知上面几个语句都是把字符串输出在控制台。
那有没有一种方法可以让,他们输出再文件,不打印再控制台呢。

当我们按住ctrl键打开System.out.println();中的out时就会发现其实 out 也是一个打印流。
在这里插入图片描述
这里的out也是可以设置的,需要自己创建一个PrintStream流
在这里插入图片描述
所以直接:

package day0927;import java.io.FileNotFoundException;
import java.io.PrintStream;public class demo13 {public static void main(String[] args) {try (//创建PrintStream流PrintStream printStream = new PrintStream("h.txt")){System.out.println("控制台");//将系统中的out设置为创建的流System.setOut(printStream);System.out.println("你好");System.out.println("我在h.txt文件中哦");} catch (FileNotFoundException e) {throw new RuntimeException(e);}}
}

结果:
未设置之前的输出再控制台。
在这里插入图片描述
设置之后的输出再h.txt文件中。
在这里插入图片描述

这篇关于IO流 之 打印流( PrintStream 和 PrintWriter )的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/153925

相关文章

如何解决Druid线程池Cause:java.sql.SQLRecoverableException:IO错误:Socket read timed out的问题

《如何解决Druid线程池Cause:java.sql.SQLRecoverableException:IO错误:Socketreadtimedout的问题》:本文主要介绍解决Druid线程... 目录异常信息触发场景找到版本发布更新的说明从版本更新信息可以看到该默认逻辑已经去除总结异常信息触发场景复

Python文件操作与IO流的使用方式

《Python文件操作与IO流的使用方式》:本文主要介绍Python文件操作与IO流的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、python文件操作基础1. 打开文件2. 关闭文件二、文件读写操作1.www.chinasem.cn 读取文件2. 写

Java程序进程起来了但是不打印日志的原因分析

《Java程序进程起来了但是不打印日志的原因分析》:本文主要介绍Java程序进程起来了但是不打印日志的原因分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Java程序进程起来了但是不打印日志的原因1、日志配置问题2、日志文件权限问题3、日志文件路径问题4、程序

springboot整合阿里云百炼DeepSeek实现sse流式打印的操作方法

《springboot整合阿里云百炼DeepSeek实现sse流式打印的操作方法》:本文主要介绍springboot整合阿里云百炼DeepSeek实现sse流式打印,本文给大家介绍的非常详细,对大... 目录1.开通阿里云百炼,获取到key2.新建SpringBoot项目3.工具类4.启动类5.测试类6.测

Java的IO模型、Netty原理解析

《Java的IO模型、Netty原理解析》Java的I/O是以流的方式进行数据输入输出的,Java的类库涉及很多领域的IO内容:标准的输入输出,文件的操作、网络上的数据传输流、字符串流、对象流等,这篇... 目录1.什么是IO2.同步与异步、阻塞与非阻塞3.三种IO模型BIO(blocking I/O)NI

Java IO 操作——个人理解

之前一直Java的IO操作一知半解。今天看到一个便文章觉得很有道理( 原文章),记录一下。 首先,理解Java的IO操作到底操作的什么内容,过程又是怎么样子。          数据来源的操作: 来源有文件,网络数据。使用File类和Sockets等。这里操作的是数据本身,1,0结构。    File file = new File("path");   字

springboot体会BIO(阻塞式IO)

使用springboot体会阻塞式IO 大致的思路为: 创建一个socket服务端,监听socket通道,并打印出socket通道中的内容。 创建两个socket客户端,向socket服务端写入消息。 1.创建服务端 public class RedisServer {public static void main(String[] args) throws IOException {

Java基础回顾系列-第七天-高级编程之IO

Java基础回顾系列-第七天-高级编程之IO 文件操作字节流与字符流OutputStream字节输出流FileOutputStream InputStream字节输入流FileInputStream Writer字符输出流FileWriter Reader字符输入流字节流与字符流的区别转换流InputStreamReaderOutputStreamWriter 文件复制 字符编码内存操作流(

android java.io.IOException: open failed: ENOENT (No such file or directory)-api23+权限受权

问题描述 在安卓上,清单明明已经受权了读写文件权限,但偏偏就是创建不了目录和文件 调用mkdirs()总是返回false. <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/><uses-permission android:name="android.permission.READ_E

多数据源的事务处理总是打印很多无用的log日志

之前做了一个项目,需要用到多数据源以及事务处理,在使用事务处理,服务器总是打印很多关于事务处理的log日志(com.atomikos.logging.Slf4jLogger),但是我们根本不会用到这些log日志,反而使得查询一些有用的log日志变得困难。那要如何屏蔽这些log日志呢? 之前的项目是提高项目打印log日志的级别,后来觉得这样治标不治本。 现在有一个更好的方法: 我使用的是log