2020-12-10

33 文件IO流(二)

33 文件IO流(二)

1 IO流分类

分类依据:

​ 流向程序里面还是流到程序外面

分类结果:(以最基础的举例)

A 、输入流

​ 字节输入流 File(来源)InPutStream

a. 作用:

​ 从指定地址的文件读取数据到程序中

b. 具体操作方法
import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;public class TestRead { public static void main(String[] args) {  File file=new File("C:\\Users\\SSS翱翔万里\\Desktop\\测试.txt");  //首先你得判断它是否是文件  if(file.isFile()){   //如果是,就读取它里面的内容   FileInputStream fileInputStream=null;   byte[] bytes=null;   try {    fileInputStream = new FileInputStream(file);    int length=0;    bytes= new byte[1024*8];    while((length=fileInputStream.read(bytes))!=-1){     System.out.print(new String(bytes,0,length));     //bytes数组存放的数据,最后一次可能不为满,     //所以长度为每次的有效长度是最好的    }   } catch (Exception e) {    e.printStackTrace();   }   finally {    //finally中的语句是无论有无异常都会执行完的    //注意:虽然不关闭流,系统会自动帮你关闭且一般不会报错,但还是建议按标准流程来    try {     fileInputStream.close();    } catch (IOException e) {     e.printStackTrace();    }   }  }else{   System.out.println("给的地址不是一个文件");  } }}
c.运行截图

B、输出流

​ 字节输入流 File(来源)OutPutStream

a.作用:

​ 把程序中的数据写到指定的文件里头

b.具体操作:

import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.util.Scanner;public class TestWrite { public static void main(String[] args) {  Scanner scanner=new Scanner(System.in);  System.out.println("请输入你要写入的字符串");  String str=scanner.next();  File file=new File("C:\\Users\\SSS翱翔万里\\Desktop\\测试.txt");  //首先你得判断它是否是文件  if(file.isFile()){   //如果是,就开始下面的往里面去写的操作   FileOutputStream fileOutputStream=null;   byte[] bytes=null;   try {    //如果不写true,则默认是覆盖原来的内容    fileOutputStream = new FileOutputStream(file,true);    //因为是字节流,所以得把字符串转换成bytes[]数组    fileOutputStream.write(str.getBytes());   } catch (Exception e) {    e.printStackTrace();   }   finally {    //finally中的语句是无论有无异常都会执行完的    //注意:虽然不关闭流,系统会自动帮你关闭且一般不会报错,但还是建议按标准流程来    try {     fileOutputStream.close();    } catch (IOException e) {     e.printStackTrace();    }   }  }else{   System.out.println("给的地址不是一个文件");  } }}
c.运行截图:


(1)


(2)


(3)

2. 总结

  1. 输入流和输出流都是需要关闭的.(为防止忘记写,在建立实例化完流对象操作时,就在下面一行写该对象的关闭操作)

  2. 为了防止输入流和输出流的源头不存在,会抛出FileNotFoundException异常,可以人为的去加个if条件判断

  3. 对文件进行输出流操作时,默认为覆盖操作,若想追加,直接令调用构造方法,传递的参数除了文件对象(含有文件的地址信息),后面再加上true;

     fileOutputStream = new FileOutputStream(file,true);








原文转载:http://www.shaoqun.com/a/497508.html

马士基航运:https://www.ikjzd.com/w/1296

www.made-in-china.com:https://www.ikjzd.com/w/2777

transfer:https://www.ikjzd.com/w/1735


33文件IO流(二)1IO流分类分类依据:​流向程序里面还是流到程序外面分类结果:(以最基础的举例)A、输入流​字节输入流File(来源)InPutStreama.作用:​从指定地址的文件读取数据到程序中b.具体操作方法importjava.io.File;importjava.io.FileInputStream;importjava.io.FileNotFoundException;impor
patpat:patpat
55海淘网:55海淘网
广州长隆欢乐世界2020五一人多吗?五一广州长隆欢乐世界门:广州长隆欢乐世界2020五一人多吗?五一广州长隆欢乐世界门
暑假去福建泰宁猫儿山旅游,有哪些优惠?:暑假去福建泰宁猫儿山旅游,有哪些优惠?
香格里拉滇金丝猴公园怎么走?:香格里拉滇金丝猴公园怎么走?

No comments:

Post a Comment