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

文件传输基础——Java IO流

难度入门
时长 2小时 0分
学习人数
综合评分9.67
669人评价 查看评价
9.9 内容实用
9.6 简洁易懂
9.5 逻辑清晰
  • RandomAccessFile操作
    查看全部
  • IO输入输出流
    查看全部
  • IO输入输出流
    查看全部
  • 访问文件
    查看全部
  • 遍历打印出指定目录下的所有文件
    查看全部
    0 采集 收起 来源:遍历目录

    2015-09-19

  • 文件读写流 1.两个类: FileReader fr = new FileReader(srcFile); FileWriter fw = new FileWriter(destFile, true); FileWritter可以指定是否append 2.(实现如图) 3.需要注意: 如果处理的文件的编码方式和程序默认的编码方式不一致,copy操作将出现乱码。 比如,当前项目的编码方式是“gbk”,而处理的文件编码方式是UTF-8,那么在使用这两个类进行处理时,不会自动转换。使用FileWritter将文件流写入文件中会出现乱码。
    查看全部
  • (接上一笔记) 3.通过OutputStreamWriter将char数组写入到OutputStreamWriter中 OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream(fileName)); while((d=isr.read(buffer, 0, buffer.length)) != -1){ osw.write(buffer, 0, d); osw.flush(); //一定要flush } 4.注意: (1)InputStreamReader和OutputStreamWriter操作对象是文本文件 (2)默认编码方式为GBK.如果一个utf-8编码的文件,需要指定编码方式为utf-8,否则会出现乱码 new InputStreamReader(new FileInputStream(fileName), "utf-8"); new OutputStreamWriter(new FileOutputStream(fileName, "utf-8); (3)完成后需要关闭close()
    查看全部
  • (buf[i] & oxf)
    查看全部
  • 数据结构--->流的数据结构
    查看全部
  • 序列化流(ObjectOutputStream) 反序列化流(ObjectInputStream) 对子类对象进行反序列化操作时,其父类没有实现序列化接口,父类的构造方法就会被显示调用
    查看全部
  • 字符流 1.主要内容再写一遍 (1)编码问题 (2)文本、文件和文本文件 java的文本(char)是16位无符号整数,是字符的unicode编码(双字节编码) 文件是byte byte byte...的字节序列 文本文件是文本(char)序列按照某种编码方案(utf-8,utf-16be,gbk)序列化为byte的存储结果 (3)字符流 两个抽象类:Reader,Writer 字符的处理是一次处理一个字符,但是底层仍然是处理基本的字节序列 注意:一个字符可能是中英文,而且不同编码方式下占用字节个数不同 (4)字符流的基本实现类 InputStreamReader 完成byte流解析为char流,按照编码解析 OutputStreamWriter 提供char流到byte流,也是按照编码处理 2.通过一个InputStreamReader将一个文件内容解析为char流 (1)一次读取一个字符,默认用的是gbk编码 InputStreamReader isr = new InputStreamReader(new FileInputStream(fileName)); int c; while((c = isr.read())!=-1){ //一次读取一个字符 System.out.print((char)c); } (2)从InputStreamReader中批量读取到字符数组 char[] buffer = new char[8*1024]; while((d=isr.read(buffer, 0, buffer.length)) != -1){ String s = new String(buffer, 0, d); //将字符数组转成String } (下一个笔记)
    查看全部
  • 字符流操作
    查看全部
  • 字节缓冲流 1.BufferedInputStream和BufferedOutputStream FileOutputStream——>write()相当于一滴滴的转移 DataOutputStream——>write()相当于一瓢一瓢的转移 BufferedOutputStream——>write()相当于一瓢一瓢先放水桶中,然后直接将桶中的水倒进缸里 2.使用缓冲流copy文件内容 BufferedInputStream bis = new BufferedInputStream(new FileInputStream(srcFile)); BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(destFile)); int c; while((c = bis.read()) != -1){ bos.write(c); bos.flush(); //刷新缓冲区 } 3.通过自己的实验,对一个7M的文件进行copy,两种方式对比 copy file by buffer 耗时:12593 copy file by byte 耗时:37404
    查看全部
    0 采集 收起 来源:字节缓冲流

    2018-03-22

  • 字节流之数据输入输出流 1.DataInputStream和DataOutputStream 是对流的扩展,可以输入输出int、long、字符等数据 2.将数据写入到数据流中 DataOutputStream dos = new DataOutputStream(new FileOutputStream(file)); //参数为FileOutputStream,要使用其write() dos.writeInt(10); dos.writeLong(10l); dos.writeDouble(13.2); dos.writeUTF("中国"); //utf-8 dos.writeChars("中国"); //utf-16be 3.从数据输入流中读出数据 DataInputStream dis = new DataInputStream(new FileInputStream(file)); //从输入流中读出一个int int i = dis.readInt(); System.out.println(i);
    查看全部
  • java文件(char)是16位无符号整数是uincode编码。 文件是以byte的形式读写操作, 序列化:(utf—8、utf-16be、gbk)文本文件。 字符流:(reader、writer) 字符的底层是基本的字节序列。 字符流的基本实现 InputStreamReader 完成byte流的解析为char OutputStreamWriter 提供char流到byte
    查看全部

举报

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

微信扫码,参与3人拼团

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

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