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

文件传输基础——Java IO流

难度入门
时长 2小时 0分
学习人数
综合评分9.67
669人评价 查看评价
9.9 内容实用
9.6 简洁易懂
9.5 逻辑清晰
  • 如何理解java采用Unicode编码 http://blog.csdn.net/shijinupc/article/details/7679945
    查看全部
    0 采集 收起 来源:文件的编码

    2017-01-06

  • 字符流可以识别换行符号 所读取文件的时候,文件的编码要和项目的编码一致,否则会出现乱码 New InputStreamReader(inputstream,uncode)默认的项目编码,操作的时候要写文件本身的编码格式
    查看全部
  • 字节字符流转换: InputStreamReader 完成byte流解析为char流,按照编码解析 OutputStreamWriter 提供char流到byte流,按照编码处理
    查看全部
  • 文本、文件和文本文件的区别: java的文本(char)是16位无符号整数,是字符的unicode编码(双字节编码) 文件是byte byte byte 的数据序列 文本文件是文本(char)序列按照某种编码方案(utf-8,utf-16be,gbk)序列化byte的存储
    查看全部
  • BufferedInputStream及BufferedOutputStream 为io提供带缓冲区的操作,一般打开文件进行写入或读取操作时,都会加上缓冲, 提高io的性能,文件流比作水 FileOutputStream-->write()一滴一滴将水转移 DataOutputStream-->writexx()相当于一瓢一瓢转移 BufferedOutputStream-->write 相当于一瓢一瓢移到桶中,再倒入另外一个缸中 代码:利用带缓冲的文件拷贝(单字节) 第一步:先判断是否存在及是 否是文件代码与之前一样 第二步:创建带缓冲字节流 BufferedInputStream bis=new BufferedInputStream( new FlieInputStream(srcFile));//srcFile为原文件 BufferedOutputStream bis=new BufferedOutputStream( new FlieOutputStream(destFile));//destFile复制的文件 in c; while((c=bis.read())!=-1){ bos.write(c); bos.flush();//刷新缓冲区如果不写就写不到缓冲区 } bis.close(); bos.colse(); 比较结果:批量字节读取文件最快
    查看全部
    0 采集 收起 来源:字节缓冲流

    2018-03-22

  • readInt readLong 方法都是对FileInputStream方法的包装 DataOutputStream/DataInputStream 对“流”功能的扩展,可以更加方便的读取 int,long, 字符等类型数据 DataOutputStream:使用FileOutputStream构造出来,通过包装FileOutput,可以调用FileOutput类的write方法来构造新的更方便的写方法: new DataOutputStream(new FileOutptStream(file)) wrieteUTF()采用utf-8编码写出字符串 用utf-16be写出字符串,或字符串数组 写完之后一定要关闭流 数据输入输出流: DataInputStream、DataOutputStream 是对“流”功能的扩展,方便读写 DataOutputStream dos = new DataOutputStream(new FileOutputStream(file)); dos.writeInt(10); dos.writeLong(10l);字母l dos.writeDouble(10.5); //采用utf-8编码写出 dos.writeUTF("中国"); //采用utf-16be编码写出 dos.writeChars("中国");
    查看全部
  • IO流(输入流,输出流) 字节流,字符流//Java中你读文件或者写文件的时候,你可以以字节为单位,也可以以字符为单位 1.字节流 1)InputStream,OutputStream//都是抽象类 InputStream抽象了应用程序读取数据的方式 OutputStream抽象了应用程序写出数据的方式 2)EOF = END //读到-1就读到结尾 3)输入流基本方法 int b=in.read();读取一个字节无符号填充到整形的低八位。-1是EOF in.read(byte[] buf);读取数据填充到字节数组buf in.read(byte[] buf,int start,int size)读取数据到字节数组buf 从buf的start位置开始存放size长度的数据 4)输出流基本方法 out.write(int b) 写出一个byte到流,b的低八位 out.write(byte[] buf)将buf字节数组都写入到流 out.write(byte[] buf,int start,int size)字节数组buf 从buf的start位置开始写size长度的字节到流 5)FileInputStream--->具体实现了在文件上读取数据
    查看全部
  • java.io.File类用于表示文件(目录) File类只用于表示文件(目录)的信息(名称、大小等),不能用于文件内容的访问 RandomAccessFile java提供的对文件内容的访问,既可以读文件,也可以写文件。 RandomAccessFile支持随机访问文件,可以访问文件的任意位置 (1)java文件模型 在硬盘上的文件是byte byte byte存储的,是数据的集合 (2)打开文件 有两种模式"rw"(读写) "r"(只读) RandomAccessFile raf = new RandomeAccessFile(file,"rw") 文件指针,打开文件时指针在开头 pointer = 0; (3) 写方法 raf.write(int)--->只写一个字节(后8位),同时指针指向下一个位置,准备再次写入 (4)读方法 int b = raf.read()--->读一个字节 (5)文件读写完成以后一定要关闭(Oracle官方说明)
    查看全部
  • FileInputStream in = new FileInputStream(fileName); byte[] buf = new byte[20 * 1024]; buf一次读不完就循环 read()将文件内容全部读完才返回 -1 0xff的作用
    查看全部
  • 一个类实现了序列化接口,那么其子类都可以进行序列化 对子类对象进行反序列化操作时,如果其父类没有实现序列化接口,那么其父类的构造函数会被(显式)调用
    查看全部
  • Java.IO.File类表示文件或目录,只用于表示文件或目录得信息,不能用于文件的访问。 常用的API: 1.创建File对象:File file=new File(String path);注意:File.seperater();获取系统分隔符,如:”\“. 2.boolean file.exists();是否存在. 3.file.mkdir();或者file.mkdirs();创建目录或多级目录。 4.file.isDirectory()或者file.isFile()判断是否是目录或者是否是文件。 5.file.delete();删除文件或目录。 6.file.createNewFile();创建新文件。 7.file.getName()获取文件名称或目录绝对路径。 8.file.getAbsolutePath()获取绝对路径。 9.file.getParent();获取父级绝对路径。 10.file.getSize();获取文件大小。 11.file.getFormat();获取文件格式名。
    查看全部
  • (3)输入流基本方法 int b=in.read();读取一个字节武符号填充到int低八位 -1是EOf in.read(byte[]buf) in.read(byte[] buf,int size)字节数组buf从start位置开始读size长度的字节到流 (4)输出流基本方法 out.write(int b)写出一个byte到流,b的低8位 out.write(byte[] but)将buf字节数组都写入到流 out.write(byte[] int start,int size)字节数组buf从start位置开始写size长度的字节到流
    查看全部
  • IO流(输出流、输入流) 字节流、字符流 1、字节流 (1)InputStream,outputStream InputStream抽象了应用程序读取数据的方法 outputStream抽象了应用程序写出数据的方式 (2)EOF=End 读到-1就读到了结尾 (3)输入流基本方法
    查看全部
  • 主要知识点
    查看全部
  • FileReader/FileWriter:可以直接写文件名的路径。无法指定读取和写出的编码,所在项目用的什么编码就识别什么编码。
    查看全部

举报

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

微信扫码,参与3人拼团

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

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