FileInputSteam的学习

FileInputStream,文件输入流,此流读取的也是字节,因此读取到的数据都会被认为是byte类型的,对于字母以及数字而言,读取到的是相对应的ASCII码编号,由于JAVA对汉字的默认编码是UTF-8,此种编码对汉字是的编码长度是16位,即2字节,对汉字会读取为2byte数值。此种输入把文本中的数据统一作为字节数据处理的,如果存储double值,3445.889,那么会看成8byte值。

代码范例:

 

try {

    InputStream input = new FileInputStream("./src/com/io/test.txt");

    int data = input.read();

       while(-1 != data){

           System.out.println(data);

           data = input.read();

       }

    } catch (FileNotFoundException e) {

       e.printStackTrace();

    } catch (IOException e) {

        e.printStackTrace();

    }

 如果test.txt中存放的文本是“1a啊”,得到的输出结果是:

49

97

176

161

注意:

Unicode编码对所有的字符都采用了2字节的编码格式,若存储ACSII字符(7位)就会存在浪费存储空间的问题,UTF-8编码是Unicod的变体,它对字母以及数字采用1位,而汉字使用2-3字节,通常是2字节。

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值