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

文件传输基础——Java IO流

难度入门
时长 2小时 0分
学习人数
综合评分9.67
669人评价 查看评价
9.9 内容实用
9.6 简洁易懂
9.5 逻辑清晰
  • File file1=new File("e:"+File.separator);//File.separator设置分隔符
    //常用的File对象的API 
    System.outprintln(file);//file.toStringO的内容
    System.outprintln(file.getAbsolutePath0);


    查看全部
  • 字符流的过滤器

    BufferedReader BR=new BufferedReader(InputStreamReader(FileInputStream));

    BufferedWrite BW=new BufferedWriter(File file);

    PrintWriter PW=new PrintWriter(File file,autoflush/*是否自动刷新,值为true/false */);

    BW.write();//一次可以写一行,但是不能识别换行符。

    BW.newLine();//换行操作。

    PW.println();//一次写一行,自动换行。

    BW.flush();//刷新。

    //BufferedRead()/BufferedWrite()方法参数查看API

    查看全部
  • FileReader/FileWriter  文件读写流。

    声明方式:FileReader fl=new FileReader(File);

      FileWriter fw=new FileWriter(File,[true/false]);//(true追加,false覆盖).

      依旧是使用fl.read()/fw.write()方法,但文件读写流无法改变读写时的编码,容易出现乱码。

    fw.flush();//进行刷新。

    查看全部
  • InputStreamReader isr=new InputStreamReader(FileInputStream,[文件编码格式]);//解析文件为char流,按照文件编码解析。

    int c;

    char []buffer=new char[8*1024];

    while((c=isr.read(buffer,0,buffer.length))!=-1){

        System.out.print(buffer);

    }

    isr.close();

    查看全部
  • BufferedOutputStream/BufferedInputStream:字节缓冲流

    在使用字节缓冲流时在写入过程中必须刷新。使用.flush();方法。

    使用方式:BufferedOutputStream bos=new BufferedOutputStream(FileOutputStream文件输入流);

    FileOutputStream批量读取效率>BufferedOutputStream中readXxx()>FileoutputStream中read();

    查看全部
    0 采集 收起 来源:字节缓冲流

    2018-09-30

  • DataInputStream 数据输出流。

    DataOutputStream 数据输入流。

    DataInputStream dps=new DataInputStream (文件输出流(FileInputStream));

    DataOutputStream dps=new DataIOutputStream (文件输入流(FileOutputStream));

    dps.read[int,double,long,utf(读取方式为utf-8),……]();

    //以int/double/long等方式读取文件内容。

    dos.write[int,double,long,utf,chars(写入格式为utf-16be),……];

    //以int/double等方式向文件内写入数据。

    以何顺序的格式写入,再以何顺序的格式读出,得到的是原输入时的结果。


    查看全部
  • 输出流FileOutputStream fileout=new FileOutputStream("路径",文件原本内容处理方式(true为追加,false为覆盖。)); 复制文件如截图所示。用中间变量buf从源文件读取内容,向目标文件写入内容。
    查看全部
  • 当数组够大且读取的文件内容不足以填充数组时,int y=finput.read([]byte,int start,int size)中y的值为-1(y用来记录已读字节长度)。
    查看全部
  • FileInputStream 作用:读取文件内容。 FileInputStream finput=new FileInputStream(File file);//将文件传递进去 FileInputStream finput2=new FileInputStream(String filename);//将文件路径传递进去。 finput.read();//只读一个byte; finput.read([]byte);//读取与byte数组长度相等的文件内容并填充到数组中去。 finput.reaf([]byte,int start,int size);//从第start开始,读取文件size大小的内容填充到数组中去。 finput.close();//必须关闭。 在使用io流时要throws IOException异常。
    查看全部
  • BufferedReader与PrintWriter一起使用效果更佳


    public static void brAndbwpr() throws IOException { 

    // 字符流过滤器BufferedReader,可以写一行,BufferedWriter,可以写一行

    BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("dataTest.txt")));

    // BufferedWriter bw=new BufferedWriter(

    // new OutputStreamWriter(

    // new FileOutputStream("dataTest2.txt")));

    // true自动刷新缓冲区

    PrintWriter pw = new PrintWriter(new OutputStreamWriter(new FileOutputStream("dataTest2.txt")), true); 

    String line = null;

    while ((line = br.readLine()) != null) {

    System.out.println(line);

    pw.println(line);

    }

    br.close();

    pw.close();

    }


    查看全部
  • gbk-中文占2个字节,英文占1个字节

    UTF-8中文占3个字节,英文站1个字节

    UTF-16be(java是双字节编码),中文英文都占2个字节

    查看全部
  • System.out.println(stu)这句,括号里的“stu”如果不是String类型的话,就自动调用student的toString()方法.不用显式打出来,即不用写成stu.toString()。如果没有重写toString方法,则输出的就是对象stu的地址.

    查看全部
  • File类 直接在创建对象时指定,用于表示文件或目录地址

    flie.exists(); 判断文件/目录是否存在

    file.mkdir(); 创建目录 file.mkdirs(); 创建多级目录

    file.createNewFile(); 创建文件

    file.delete(); 删除文件或目录

    file.isDirectory(); 判断是否为目录

    file.isFile(); 判断是否为文件

    file 返回文件路径(等于file.getAbsolutePath();)

    file.getName(); 返回文件/目录名

    file.getParent(); 返回当前文件的父目录地址

    file.getParentFile(); 返回当前文件父目录的File对象

    查看全部
  • //文件读写 .read()//只能读取一个字节。 .write()//只能写入一个字节。 .seek(0);//使指针移至头部。 .writeInt();//写入一个Int数值。 byte[] conts=new byte[(int)file.length]; .read(conts);//一次性读取文件内全部内容。 byte[]conv=str.getbyte("格式");//按格式获取当前字符串字节内容。 .write(conv);//一次性写入conv数组全部内容。 在对文件操作后必须.close()关闭文件。

    查看全部
  • //遍历目录下所有文件(包括子文件下的文件) //获取当前目录下所有文件的目录。 //判断每个文件是否为目录,是则获取此目录的所有子文件的目录并判断长度是否大于0且不为null。 //是则递归调用,否则打印输出。 String[] filename=file1.list();//返回目录下所有子文件名称。 File[] filepath=file1.listfile();//返回目录下所有子文件的目录。 throws IOEexception…避免异常。 throw new IllegalArgumentException("…");异常后打印输出提示语。
    查看全部
    0 采集 收起 来源:遍历目录

    2018-08-24

举报

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

微信扫码,参与3人拼团

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

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