System类IO交互

标准输出 public static final PrintStream out;
err 错误输出
in 标准输入设备
在system 源代码中系统输出 有两个常量 out和err都是printStream的对象
这两种输出有一个设计目的out 是用户能看见的内容,err是用户不能看见的内容。
这两种输出都没用。
err 会用红色的颜色输出。作为一个保留的属性提供存在。
由于system.out 是PrinitStream 类的实例化对象,而PrintStream又属于outputStream 的子类,可以用sysout.out为outputStream实例化,OutputStream的输出位置将变成屏幕输出。
OutputSream out= System.out; //是利用子类实例实现向上转型。
再用out.write(“世界和平”.getByte())方法输出,即完成了子类实例向上转型的过程。
抽象类不同子类针对于统一方法有不同的实现。

由于一次读取不完,最好的办法是引入内存操作流程。将数据保存在内存流,通过内存流一次性取出。
在内存流的操作中,换行不是“-1”需要用户自己处理换行的问题,换行不是文件结束。发现结尾是一个换行符。利用if(temp<data.length){break;}来对结尾的回车进行控制,system.in 不好用,system.in 是字节流,但是用来处理字符的话。如果不考虑中文,只考虑英文问题,那么则可以按照下面方法来while ((temp=input.read())!=-1){if(temp==’\n’){break; 表示当输入换行符的时候,从输入中断开}}实现了无长度限制的输入。但是对于中文却不行,一个也读不出来,只能读半个字符通过比较system.in 的支持度不高,英语还可以接受,利用内存流可以弥补一部分不足,但是对于中文来说,还不能支持。在IO中进行中文处理,最好是将所有数据保存在一起,才能保证不出现乱码。考虑使用中文,则使用字符输入输出流。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值