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

文件传输基础——Java IO流

难度入门
时长 2小时 0分
学习人数
综合评分9.67
669人评价 查看评价
9.9 内容实用
9.6 简洁易懂
9.5 逻辑清晰
  • dos.writeUTF("中国");//会采用utf-8编码输出
    查看全部
  • InputStreamReader isr = new InputStreamReader(in,"utf-8");//默认项目的编码,操作的时候,要写文件本身的编码格式
    查看全部
  • /v
    sdf
    查看全部
    1 采集 收起 来源:文件的编码

    2014-10-23

  • randomaccesfile使用
    查看全部
  • 序列化过程中子父类构造函数调用问题 一个类实现了序列化接口,那么其子类都可以进行序列化 一、父类实现了serializable接口,子类继承就可序列化。 1、子类在反序列化时,父类实现了序列化接口,则不会递归调用其构造函数。 二、父类未实现serializable接口,子类自行实现可序列化 2、子类在反序列化时,父类没有实现序列化接口,则会递归调用其构造函数。 【反序列化时】,向上递归调用构造函数会从【可序列化的一级父类结束】。即谁实现了可序列化(包括继承实现的),谁的构造函数就不会调用。 父类实现了serializable接口,子类继承就可序列化。 1、子类在反序列化时,其父类实现了序列化接口,则不会递归调用他们的构造函数。 2、若父类没有实现serializable接口,其子类自行实现反序列化,递归调用其构造函数 结论:反序列化时,谁实现了可序列化(包括继承实现的),谁的构造函数就不会调用。
    查看全部
  • 感觉还不错
    查看全部
    1 采集 收起 来源:文件的编码

    2014-10-22

  • isDirectory()不是目录或者目录不存在返回false
    查看全部
  • gbk编码中文占2个字节,英文占1个字节, utf-8编码,中文占用3个字节,英文占用1个字节 java是双字节编码utf-16be 该编码中文和英文都是2个字节 当字节序列是某种编码时,这个时候想把字节序列变成字符串,也需要用这种编码方式,否则会出现乱码 文本文件可以是任意编码的字节序列 如果在中文机器上直接创建文本文件,那么该文本文件只认识ANSI编码
    查看全部
    1 采集 收起 来源:文件的编码

    2015-06-25

  • String s = "慕课ABC"; byte[] byte1 = s.getBytes();//将字符串转化为字节数组,用的是项目默认的编码gbk //gbk编码中文占2个字节,英文占1个字节 byte[] byte2 = s.getBytes("gbk"); //utf-8编码中码中文占3个字节,英文占1个字节 byte[] byte3 = s.getBytes("utf-8"); //java是双字节编码utf-16be,utf-16be编码中码中文占2个字节,英文占2个字节 byte[] byte4 = s.getBytes("utf-16be");
    查看全部
    1 采集 收起 来源:文件的编码

    2018-03-22

  • java.IO.File类用于表示文件(目录)。 File类用于表示文件(目录)的信息(名称、大小等),不能用于文件内容的访问。
    查看全部
  • FileInputStream文件输入 单字节输入即不用数组。 /** * 批量读取,对大文件而言效率高,也是我们最常用的读文件的方式 * @Inparam fileName * @throws IOException */ public static void printHexByByteArray(String fileName)throws IOException{ FileInputStream in = new FileInputStream(fileName); byte[] buf = new byte[8 * 1024]; /*从in中批量读取字节,放入到buf这个字节数组中, * 从第0个位置开始放,最多放buf.length个 * 返回的是读到的字节的个数 */ int bytes = in.read(buf,0,buf.length);//一次性读完,说明字节数组足够大 int j = 1; for(int i = 0; i < bytes;i++){ System.out.print(Integer.toHexString(buf[i] & 0xff)+" "); if(j++%10==0){ System.out.println(); } }
    查看全部
  • 1、byte 类型 8 位,int 类型 32 位,为了避免数据转换错误,通过 & 0xff 将高 24 位清零 2、long time = System.currentTimeMillis() 当前时间与协调世界时 1970 年 1 月 1 日午夜之间的时间差(以毫秒为单位测量) 3、is.read() 单字节适合读取 小 文件 is.read(byte[] bytes,int star,int size) 字节数组适合读取 大 文件 读取文件最常用的是批量读取int bytes = fis.read(buf, 0 , buf.length);
    查看全部
  • 输出流的方法
    查看全部
  • BufferedInputSteram和BufferedOutputStream: 提供了带缓冲区的操作,一般打开文件进行写入或读取时,都会加上缓冲,提高了IO的性能。 FileOutputStream--->write()一滴一滴写 DataOutputStream--->writeXXX()相当与一瓢一瓢的写 BufferedOutputStream--->write()相当于一瓢一瓢先放入桶中,然后一整桶写 使用BufferedInputSteram和BufferedOutputStream时,要到用flush()刷新缓冲区。
    查看全部
    1 采集 收起 来源:字节缓冲流

    2018-03-22

  • File.separator这样实现linux、windows都认识 java.io.File类用于表示文件(目录) 程序员可以通过File类在程序中操作硬盘上的文件和目录 File类只用于表示文件(目录)的信息(名称,大小等),不能用于文件内容的访问 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();获取文件格式名。 File file=new File("E:\\javaio"); syso -> file.exist(); if (!file.exists()){ file.mkdir(); //如果不存在就建立一个 // file.mkdirs() 创建多级目录 else file.delete(); //存在就删除 syso -> (file.isDirectory()); // 是否是一个目录 syso -> (file.isFile()); // 是否是一个文件 File file2=new File("e:\\javaio\\日记1.txt"); or ("e:\\javaio","日记1.txt") if (!file2.exist()){ file2.createNewFile(); 捕捉异常 syso -> (file) // file.toString() 的内容 syso -> (file.getAboslutePath()); //上同 。
    查看全部

举报

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

微信扫码,参与3人拼团

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

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