java 打印流
2020-12-13 05:19
标签:iter false sys 种类 lse 输出 必须 数据 实例化 (只有两个,PrintWriter和PrintStream) 思考:如果现在要想完成一个字符串或者是boolean型或者是字符型的数据输出使用OutputStream是否方便? 肯定是不方便的,因为OutputStream中只能操作字节数据,所以其他的数据类型很难操作,那么在Java的IO包中为了解决这种问题增加了两种类:PrintStream、PrintWriter。 打印流有非常好的打印功能,可以打印任何的数据类型。如,整数,小数,字符串等。 观察PrintStream类的构造: public PrintStream(File file) throws FileNotFoundException public PrintStream(OutputStream out) 虽然PrintStream是OutputStream的子类,但是在实例化的时候依然需要一个OutputStream的对象。 PrintWriter和PrintStream都属于输出流,分别针对字符和字节。 PrintWriter和PrintStream重载的print()和println()用于多种数据类型的输出。 print()里的参数不能为空;println()可以 PrintWriter和PrintStream输出操作不抛出异常 PrintStream调用println方法有自动flush功能; Eg: package june6D; import java.io.FileWriter; import java.io.PrintStream; import java.io.PrintWriter; public class PrintDemo9 { public static void main(String[] args) throws Exception { PrintStream ps = new PrintStream("out.txt"); // ps.write(12); ps.println(10086); ps.println(false); // ps.print();针对print而言,不可以出现这样的(无参) ps.println();// 此时就可以 //备注:System.out.println();想当于ps = System.out; ps = System.out; ps.println("您好!");// 控制台操作,注意上一句 // 字符打印流 PrintWriter pr = new PrintWriter("out2.txt"); // PrintWriter(OutputStream out, boolean autoFlush) 通过现有的 OutputStream,创建新的 PrintWriter。(构造方法) pr = new PrintWriter(new FileWriter("out2.txt"), true);// 自动刷新,否则的话需要关闭资源! // 与PrintStream不同,若PrintWriter使用了自动刷新方法,那么必须调用println,print,format这些方法的其中一个才可以实现操作 pr.println("呼哈哈哈哈"); pr.println(false); pr = new PrintWriter(System.out, true);// 打印在控制台上 pr.println(false); pr.println("河南城建学院"); pr.println(376430645); // pr.close();//因为使用了自动刷新。 } } java 打印流 标签:iter false sys 种类 lse 输出 必须 数据 实例化 原文地址:https://www.cnblogs.com/fanweisheng/p/11136233.html