为了账号安全,请及时绑定邮箱和手机立即绑定

文件传输基础——Java IO流

难度入门
时长 2小时 0分
学习人数
综合评分9.67
669人评价 查看评价
9.9 内容实用
9.6 简洁易懂
9.5 逻辑清晰
  • 对于一个文件的copy示例: 有三种方法实现:单字节copy||批量读取copy||带缓冲的copy 批量读取速度最快
    查看全部
    0 采集 收起 来源:字节缓冲流

    2015-11-04

  • dos.writeUTF("中国");——dos.writechars("中国");
    查看全部
  • 输入输出流的联合使用: 1.对于文件的操作,因为destFile即使不自己创建,程序也会帮忙创建,所以需要判断的是srcFile是否存在,是否是文件 2.是文件,则进行后续操作。 program要完成数据的读入写出,首先要开启输入流,输出流。 FileInputStream in=new FileInputStream(srcFile); FileOutputStream out=new FileOutputStream(destFile); 3.流开启后进行读写操作。 批量读取——建立缓冲区 byte[] buf=new byte[2*1024]; 循环批量读取 int bytes; while((bytes=in.read(buf,0,buf.length))!=-1){ out.write(buf,0,bytes); }
    查看全部
  • 注:FileInputStream,FileOutputStream,是对文件的操作,所以要判断,SRCFile是不是文件,是文件,才进行后续的读写操作
    查看全部
  • 输入输出流联合的使用
    查看全部
  • 抛出异常 throw new
    查看全部
  • 1.单字节读取:效率低(没有缓冲区),方法:int b=in.read();,一般不用与大文件的读取 2.批量读取:效率高(利用了缓冲区),方法:int bytes=in.read(byte[] b,int start,int length);,一般用于打文件读取,是我们常用的文件读取方法
    查看全部
  • currentTimeMillis()获取系统的时间, 可以计算end-start时间,得到操作耗时
    查看全部
  • 类型转换
    查看全部
  • FileInputStream——read(byte[] b,int start,int length) 采用该方法读取输入流,可能出现的情况是:1.读不满,2.放不下 当一次读取放不下时,采用的方法是 while((bytes=in.read(buf,0,buf.length))!=-1){ for(int i=0;i<bytes;i++){ system.out.print(buf[i]+" "); } }
    查看全部
  • GBK中文占两个字节,英文占一个字节 UTF-8中文占三个字节,英文占一个字节
    查看全部
    0 采集 收起 来源:文件的编码

    2015-11-04

  • System.out.println(Integer.toHexString(b & 0xff)); 把byte型的 b 转换成 int型 兵役十六进制的字符串显示出来。byte原始8bit,转换成int型之后,高位补充24个0, 显示起来不好看,就着去第八位有用的 & 0ff 再以十六进制显示. 转换成字节编码 用的是 项目的默认编码 查看 默认的编码 窗口/首选项/常规/工作空间/文件编码.eclipse默认选择操作系统的编码发誓,windows一般是gbk编码,要想然软件金达限度的支持中文,可以选择utf-8编码,英文单字节 byte[] byte2 = s.getBytes("gbk");指定获取字符串的gbk编码 通过实验可以看出 gbk编码中汉字占用 两个字节, 英文单字节 指定获取 utf-8编码中汉字占用3个字节,英文字母单字节 java 中的编码采用 utf-16be编码 实验可以看到,utf-16be中中英文都是占用两个字节 注意当字节序列是某种编码时,这个时候想把字节序列变成字符串,也需要使用这种编码方式,否则出现乱码 byte [] byte4 = s.getBytes("utf-16be"); .... String str1 = new String(byte4, "utf-18be");这样输出str1时,就能直接输出相应的字符串 /** * 小总结 * 文本文件里卖年就是字节序列,而且可以是任意编码的字节文件 * 如果在中机器上穿件文件,那么机器只认识ansi编码 */ 在eclipe中我们穿件一个项目是,可以右键属性,更改项目的编码方式,一旦指定了一种编码方式,那么这个项目就只认识指定编码格式的 文件,将一个编码方式项目下的文档考到另一个编码方式为项目下,这是会看到出现乱码,但是无论那种编码方式项目下的文件拷贝到,windows资源管理的任意位置,都能正常显示,这是windows。因为他能识别任何编码方式的文件。另一种情况是,把一种字节编码方式的文件总的,文件内容直接拷贝,粘贴到另一种编码方式的字节文件中,能够正常显示,这个过程可以进行自动的编码转换。 为什么要清楚不同编码方式的中英文字符所占的字节数。因为后期,比如读写一个utf-8的文件,你就知道必须读三个字节才能读出一个中文字符
    查看全部
    1 采集 收起 来源:文件的编码

    2018-03-22

  • 字节流
    查看全部
  • 新建 三个 文件夹 联通 联想 联
    查看全部
    0 采集 收起 来源:文件的编码

    2015-11-03

  • javaIO流
    查看全部
    0 采集 收起 来源:文件的编码

    2015-11-03

举报

0/150
提交
取消
课程须知
亲,为了更好的学习本门课程,需要您对二进制的知识有所了解,还要熟悉Java的基本语法和面向对象的知识。
老师告诉你能学到什么?
1、了解文件编码。 2、能够对文件和目录进行管理操作。 3、能够应用字节流和字符流对文件进行读写操作。 4、能够对对象进行序列化和反序列化。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!