java printstream_Java PrintStream类

首页 > 基础教程 > IO流 > OutputStream类

Java PrintStream类

定义

public PrintStream(OutputStream out)

public PrintStream(OutputStream out,boolean autoFlush)

public PrintStream(OutputStream out,boolean autoFlush,String encoding)

public PrintStream(String fileName)

public PrintStream(String fileName,String csn)

public PrintStream(File file)

public PrintStream(File file,String csn)

参数

out:要将值和对象打印到的输出流。

autoFlush:如果为true,则每当写入字节数组,调用println方法之一或写入换行符或字节('\ n')时,都会刷新输出缓冲区。

fileName:用作此打印流目标的文件名。 如果文件存在,那么它将被截断为零大小; 否则,将创建一个新文件。 输出将被写入文件并被缓冲。

csn:支持的字符集

异常

FileNotFoundException:无法创建或者操作文件

SecurityException:无权限操作此文件

UnsupportedEncodingException:无法支持的字符集

方法

//将指定的字节写入管道输出流。

public void write(int b)

public void write(byte[] b,int off,int len)

将指定的字节写入此字节数组输出流,此方法继承于OutputStream,可以参考OutputStream.write

PrintStream.print()也是打印数据,和println差不多,也可以输入java基本类型的数据,只不过是不会自动加上换行符。print和printin底层都是调用了write方法,基本上都差不多。

//追加数据到输出流

public PrintStream append(char c)

public PrintStream append(CharSequence csq,int start,int end)

public PrintStream append(CharSequence csq)

//关闭输出流

public void close()

//刷新输出流

public void flush()

例子

public static void main(String[] args)

{

PrintStream ps = null;

try

{

FileOutputStream fos = new FileOutputStream("G:/51gjie.txt");

ps = new PrintStream(fos);

}

catch(Exception e)

{

}

if(ps != null)

{

//将输出定向到文件

System.setOut(ps);

//系统打印用PS输出

System.out.println("hello www.51gjie.com");

}

}

1. PrintStream流有自动刷新机制,例如当向PrintStream流中写入一个字节数组后自动调用flush()方法。

2. PrintStream将基本的数据类型的数据或引用数据类型的对象格式化成字符串后再输出。使用该类不必书写转化成字符串的操作方法,可以直接输出。

3. PrintStream可以通过setOut()改变System.out不用打印到控制台,而且转到其他媒介。

4. PrintStream一般用得比较少,它能做的PrintWriter也都能实现,并且PrintWriter的功能更为强大,所以可以替代。

版权声明:本文为JAVASCHOOL原创文章,未经本站允许不得转载。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值