博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
基于【字节】操作的IO接口:InputStream、OutputStream
阅读量:5262 次
发布时间:2019-06-14

本文共 1815 字,大约阅读时间需要 6 分钟。

InputStream

1211163-20171009153027840-197402793.png

参考链接:

/** * Author:Mr.X * Date:2017/10/9 17:11 * Description: * @read():一个一个字节的读(单字节读取) */public class Demo1 {    public static void main(String[] args) throws IOException{        FileInputStream fis = new FileInputStream("e:/abc.txt");        int by = 0;        while ((by = fis.read()) != -1) {            System.out.print((char) by);        }        fis.close();    }}

1211163-20171009172350918-1467244226.png

/** * Author:Mr.X * Date:2017/10/9 17:12 * Description: * * @read(byte[] buf):先把字节存入到缓冲区字节数组中,一下读一个数组(常用) * @即(多字节读取) */public class Demo2 {    public static void main(String[] args) throws IOException {        FileInputStream fis = new FileInputStream(new File("e:/abc.txt"));        int len = 0;        byte[] buf = new byte[1024];        while ((len = fis.read(buf)) != -1) {            System.out.print(new String(buf, 0, len));        }        fis.close();    }}

1211163-20171009172421652-367152865.png

因为中文占用2Byte,英文占用1Byte,所以按照一个一个字节的读取得时,中文是要出问题的!

单个字节流只能操作英文,不能操作中文,所以要一次性读取多个字节才能读取中文信息!
abc.txt编码为uft-8,如果为其他编码的话,需要使用到字符流(专门用于操作字符)设置编码,不然中文会出问题!

OutputStream

1211163-20171009153541840-1127114878.png

参考链接:

public class Demo1 {    public static void main(String[] args) throws IOException {        FileOutputStream fos = new FileOutputStream("e:/b.txt");        fos.write(65);        fos.write(66);        fos.write(67);        fos.write(68);        String str = " hello word!";        fos.write(str.getBytes());        fos.close();    }}

1211163-20171009204715434-1223772996.png

public class Demo2 {    public static void main(String[] args) throws IOException {        FileInputStream fis = new FileInputStream(new File("e:/abc.txt"));        FileOutputStream fos = new FileOutputStream("e:/b.txt");        int len = 0;        byte[] buf = new byte[1024];        while ((len = fis.read(buf)) != -1) {            fos.write(buf, 0, len);        }        fos.close();        fis.close();    }}

1211163-20171009204834324-549633585.png

转载于:https://www.cnblogs.com/bobi1234/p/7641303.html

你可能感兴趣的文章
[算法模板]SOS DP
查看>>
CF1208F Bits And Pieces
查看>>
CF1215E Marbles
查看>>
手把手教你写一个windows服务 【基于.net】 附实用小工具{注册服务/开启服务/停止服务/删除服务}...
查看>>
.net Core 图片验证码 基于SkiaSharp实现
查看>>
fish redux 个人理解
查看>>
java 笔记一些
查看>>
夜晚的岳麓山
查看>>
Struts2工作原理及流程
查看>>
Chrome(谷歌浏览器)不识别document.documentElement.scrollTop
查看>>
/Home/Tpl/Equipment/rangeIndex.html 里调用魔板
查看>>
创建本地索引和全局索引
查看>>
Oracle导出存储过程
查看>>
创建LIST分区
查看>>
一些规范(自用)
查看>>
记录SSD中的一些东西
查看>>
第二十一章 Django的分页与cookie
查看>>
表示一个文件的 File 类型
查看>>
ORA-01403:no data found 解决办法
查看>>
当 智能箭头 碰到 方向箭头 。。。。。。。
查看>>