zoukankan      html  css  js  c++  java
  • Java IO学习第二天部分详解

    /*
    * IO流: 作用:用于设备和设备之间的数据传输
    * File类的使用:操作文件的属性
    *
    * IO流 用来操作文件的数据
    *
    * 分类:
    * 流按照操作数据的类型分为:字节流 / 字符流
    *
    * 字节流:读取的是文件的二进制数据,不会对二进制做处理.不会解析成比看得懂的数据
    * 字符流:读取的是二进制数据。他会将二进制数据转化为我们能过别的字符(解码)。字符流是以字符为单位
    *字符流 = 字节流 +解码

    * 流按照流的方向: 输入流和输出流
    * 判断流是输出还是输入以当前的应用程序为参考,观察数据是流入还是流出,如果是流出就是输出流
    *
    * 先来看字节输入流
    * InputStream 此抽象类是表示字节输入流的所有类的超类,抽象类
    *
    * 如何判断一个流值字节输入流
    * 判断他的类名是否以InputStream结尾
    * 使用FileInputStream 是InputStream的子类
    * 使用步骤
    * 1.找到目标文件

       

    package IO02;

    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.IOException;

    public class Demo3 {

    public static void main(String[] args) throws IOException {
    // TODO Auto-generated method stub

    getFile();
    getFile2();
    getFile3();
    getFile4();
    }

    //方法四
    public static void getFile4() throws IOException{
    File file = new File("C:\JAVA学习/a.txt");

    //2.建立通道
    FileInputStream fileInputStream = new FileInputStream(file);

    //3.建立一个缓冲区
    byte[] b = new byte[1024];

    int count=0;

    while((count = fileInputStream.read(b))!=-1){

    System.out.print("方法四:"+new String(b,0,count));


    }
    //5.关闭资源
    fileInputStream.close();




    }



    //方法3
    public static void getFile3() throws IOException{
    File file = new File("C:\JAVA学习/a.txt");

    //2.建立通道
    FileInputStream fileInputStream = new FileInputStream(file);

    //3.创建一个缓冲区
    byte[] b = new byte[1024];

    int count = fileInputStream.read(b);

    System.out.println(count);

    System.out.println("方法三:"+new String(b,0,count));

    //5.关闭资源
    fileInputStream.close();




    }






    //方法二

    //1.找到目标文件
    public static void getFile2() throws IOException{
    File file = new File("C:\JAVA学习/a.txt");

    //2.建立通道
    FileInputStream fileInputStream = new FileInputStream(file);

    //3.读数据
    /*for (int i = 0; i < file.leng(); i++) {
    char c = (char)fileInputStream.read();
    System.out.println(c);
    }
    */
    int content = 0;
    while ((content = fileInputStream.read())!=-1) {
    System.out.print("方法二:"+(char)content);

    }



    }









    public static void getFile() throws IOException{


    //方法一
    //1.找到目标文件
    File file = new File("C:\JAVA学习/a.txt");

    //2.建立通道
    FileInputStream fileInputStream = new FileInputStream(file);
    //3.读取文件中的数据
    //read()只获取一个字节
    int data = fileInputStream.read();
    System.out.println("获取数据 :" + data);

    //4.关闭资源
    fileInputStream.close();

    }
    }

  • 相关阅读:
    二叉树——数组的异或和
    二叉树——最长子数组累加和
    二叉树——平衡二叉搜索树 TreeSet, TreeMap
    二叉树——大楼的轮廓线
    数据结构--Morris遍历--二叉树的遍历
    数据结构--单调栈--烽火台
    数据结构--单调栈--求最大子矩阵的大小
    数据结构--单调栈--构造数组的MaxTree
    数据结构--单调栈结构
    字符串的压缩和解压缩
  • 原文地址:https://www.cnblogs.com/qq282273633/p/6133799.html
Copyright © 2011-2022 走看看