zoukankan      html  css  js  c++  java
  • java InputStream的使用

    package cn.kongxh.io3;
    import java.io.File ;
    import java.io.InputStream ;
    import java.io.FileInputStream ;
    public class InputStreamDemo01{
        public static void main(String args[]) throws Exception{    // 异常抛出,不处理
            // 第1步、使用File类找到一个文件
            File f= new File("d:" + File.separator + "test.txt") ;    // 声明File对象
            // 第2步、通过子类实例化父类对象
            InputStream input = null ;    // 准备好一个输入的对象
            input = new FileInputStream(f)  ;    // 通过对象多态性,进行实例化
            // 第3步、进行读操作
            byte b[] = new byte[1024] ;        // 所有的内容都读到此数组之中
            input.read(b) ;        // 读取内容   网络编程中 read 方法会阻塞
            // 第4步、关闭输出流
            input.close() ;                        // 关闭输出流
            System.out.println("内容为:" + new String(b)) ;    // 把byte数组变为字符串输出
        }
    };

    package cn.kongxh.io3;
    import java.io.File ;
    import java.io.InputStream ;
    import java.io.FileInputStream ;
    public class InputStreamDemo02{
        public static void main(String args[]) throws Exception{    // 异常抛出,不处理
            // 第1步、使用File类找到一个文件
            File f= new File("d:" + File.separator + "test.txt") ;    // 声明File对象
            // 第2步、通过子类实例化父类对象
            InputStream input = null ;    // 准备好一个输入的对象
            input = new FileInputStream(f)  ;    // 通过对象多态性,进行实例化
            // 第3步、进行读操作
            byte b[] = new byte[1024] ;        // 所有的内容都读到此数组之中
            int len = input.read(b) ;        // 读取内容
            // 第4步、关闭输出流
            input.close() ;                        // 关闭输出流
            System.out.println("读入数据的长度:" + len) ;
            System.out.println("内容为:" + new String(b,0,len)) ;    // 把byte数组变为字符串输出
        }
    };

    package cn.kongxh.io3;

    import java.io.File ;
    import java.io.InputStream ;
    import java.io.FileInputStream ;
    public class InputStreamDemo03{
        public static void main(String args[]) throws Exception{    // 异常抛出,不处理
            // 第1步、使用File类找到一个文件
            File f= new File("d:" + File.separator + "test.txt") ;    // 声明File对象
            // 第2步、通过子类实例化父类对象
            InputStream input = null ;    // 准备好一个输入的对象
            input = new FileInputStream(f)  ;    // 通过对象多态性,进行实例化
            // 第3步、进行读操作
            byte b[] = new byte[(int)f.length()] ;        // 数组大小由文件决定
            int len = input.read(b) ;        // 读取内容
            // 第4步、关闭输出流
            input.close() ;                        // 关闭输出流
            System.out.println("读入数据的长度:" + len) ;
            System.out.println("内容为:" + new String(b)) ;    // 把byte数组变为字符串输出
        }
    };

    package cn.kongxh.io3;

    import java.io.File ;
    import java.io.InputStream ;
    import java.io.FileInputStream ;
    public class InputStreamDemo04{
        public static void main(String args[]) throws Exception{    // 异常抛出,不处理
            // 第1步、使用File类找到一个文件
            File f= new File("d:" + File.separator + "test.txt") ;    // 声明File对象
            // 第2步、通过子类实例化父类对象
            InputStream input = null ;    // 准备好一个输入的对象
            input = new FileInputStream(f)  ;    // 通过对象多态性,进行实例化
            // 第3步、进行读操作
            byte b[] = new byte[(int)f.length()] ;        // 数组大小由文件决定
            for(int i=0;i<b.length;i++){
                b[i] = (byte)input.read() ;        // 读取内容
            }
            // 第4步、关闭输出流
            input.close() ;                        // 关闭输出流
            System.out.println("内容为:" + new String(b)) ;    // 把byte数组变为字符串输出
        }
    };

    package cn.kongxh.io3;

    import java.io.File ;
    import java.io.InputStream ;
    import java.io.FileInputStream ;
    public class InputStreamDemo05{
        public static void main(String args[]) throws Exception{    // 异常抛出,不处理
            // 第1步、使用File类找到一个文件
            File f= new File("d:" + File.separator + "test.txt") ;    // 声明File对象
            // 第2步、通过子类实例化父类对象
            InputStream input = null ;    // 准备好一个输入的对象
            input = new FileInputStream(f)  ;    // 通过对象多态性,进行实例化
            // 第3步、进行读操作
            byte b[] = new byte[1024] ;        // 数组大小由文件决定
            int len = 0 ;
            int temp = 0 ;            // 接收每一个读取进来的数据
            while((temp=input.read())!=-1){
                // 表示还有内容,文件没有读完
                b[len] = (byte)temp ;
                len++ ;
            }
            // 第4步、关闭输出流
            input.close() ;                        // 关闭输出流
            System.out.println("内容为:" + new String(b,0,len)) ;    // 把byte数组变为字符串输出
        }
    };

    总结:InputStream操作的是字节、实现类分为几个方向、内存、本地文件、网络、其他线程管道

  • 相关阅读:
    项目有大小,生存各有道
    学习Spark——那些让你精疲力尽的坑
    学习Spark——环境搭建(Mac版)
    小程序新能力-个人开发者尝鲜微信小程序
    如何写出好代码
    华为手机nova2s使用第三方字体库
    std::string与std::wstring互相转换
    Steam安装Google Earth VR
    osgearth2.8关于RectangleNodeEditor编辑点不可见的问题
    Qt生成ui文件对应的.h和.cpp文件
  • 原文地址:https://www.cnblogs.com/gyadmin/p/8125936.html
Copyright © 2011-2022 走看看