IO流加强之打印流


import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.PrintStream;


import org.junit.Test;


public class PrintStreamDemo {

/*打印流特点

1)只有输出没有输入。PrintStream是字节打印流,PrintWriter是字符打印流。

        2)能够方便地打印各种数据“值表示形式”,提供了一系列的打印功能(只有它有,其它流都没有。)
        3)和其他输出流不同,它永远不会抛出IOException异常(构造方法除外),异常内部解决且设置了内部标志。
       4)可创建具有自动刷新的功能,可使用带换行符的println()方法。
       5)(在构造方法中)可以指定字符集编码的。



* 1.打印流中write(int)方法的功能:
*    1)输出字节数据,如果整数值大于一个字节只输出最后一个字.
*    2)通常是面向计算机的,把原始数据输出。例如: 35是: 0010 0011
*    3)以后输出图片、声音类二进制文件,要用write()方法
*    
* 2.打印流中print(int)方法的功能:
*    1)把整数参数转换成字符输出.
*    2)通常是面向用户的,按"我们看到的样子"输出来
*    3)以后输出文本内容,要用print()或println()

 * 关于打印流的自动刷新

             * autoFlush - boolean 变量;如果为 true,则 println、printf 或 format 方法将刷新输出缓冲区。---其实是因为这几个方法中帮我们调用了out.flush()。

*/



@Test
public void printStreamDemo() throws IOException{
PrintStream out = new PrintStream("a.txt");
//out.write(97); //a  输出字节数据
//out.write(353);//a

//out.print(97);//97  把整数参数转换成字符输出  例如: 35是: 0011 0101
out.print(353); //353
}


@Test
public void printStreamDemo2() throws IOException{
PrintStream out = System.out;

for(int i=1;i<10;i++){
out.println("i="+i);
}
out.close();//把System.out关掉之后,后面的输出就无效了...

System.out.println("--------------");
for(int i=1;i<10;i++){
System.out.println("i="+i);
}
}

@Test
public void printStreamDemo3() throws IOException{
changeOut();
for(int i=1;i<10;i++){
System.out.println("i="+i);
}
System.out.println("--------------");
}
private void changeOut() {
try {
PrintStream ps = new PrintStream("aa.txt");
System.setOut(ps);//更改系统的System.out流,让所有输出存入文件
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}


}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值