Java I/O 输入输出流(四)——字节流之文件输入流FileInputStream-1

字节流之文件输入流FileInputStream-1

  • 它就是IO流(输入流、输出流)
  • 又分为字节流,字符流

字节流

1)InputStream、OutputStream

  • InputStream抽象了应用程序读取数据的方式
  • OutputStream抽象了应用程序写出数据的方式
    2)EOF = End读到-1就读到结尾
    3)输入流的基本方法(读)
  • int b = in.read;读取一个字节无符号填充到int的第八位,-1是EOF。
  • in.read(byte[] buf);读取数据填充到字节数组buf.
  • int.read(byte[] buf,int start,int size);读取数据到字节数组buf从buf的start位置开始,存放size长度的数据。
    4)输出流的基本方法
  • out.write(int b);写出一个byte到流,b的第八位。
  • out.write(byte[] buf)将buf字节数组都写入到流。
  • out.write(byte[] buf,int start,int size);字节数组buf从start位置开始写size长度的字节到流。
  • FileInputStram ——>具体实现了在文件上读取数据

写一个工具类:IOUtil.java

public class IOUtil{
/*
 *读取指定文件内容,按照16进制输出控制台
 *并且输出10个byte换行
 */
  public static void printHex(String fileName)throws IOException{
//把文件作为字节流进行读操作
   FileInputStream in = new FileInputStream(file Name);
    int b;
   int i = 1;
   while((b = in.read())!=-1){
   if(b <=0xf){
   //单位数前补0
    System.out.print(("0");
   }
  System.out.println(Tnteger.to HexString(b)+"  ");//将整型b转换为16进制表示的字符串输出
     if(i++%10==0){
     System.out,println();
    }
   }
  int close();
 }
}

接下来写一个测试类:IOUtilTest1.java

public class IOUtilTest1{
  public static void main (String[] args){
     try{
          IOUtil.printHex("e:\\javaio\\FileUtils.java");
         }catch(IOExceorion){
         e.printstackTrace();
         }  
  }
}
运行结果
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 一、基础知识:1、JVM、JRE和JDK的区别:JVM(Java Virtual Machine):java虚拟机...
    杀小贼阅读 2,563评论 0 4
  • 五、IO流 1、IO流概述 (1)用来处理设备(硬盘,控制台,内存)间的数据。(2)java中对数据的操作都是通过...
    佘大将军阅读 585评论 0 0
  • 1、IO流 1.1、概述 之前学习的File类它只能操作文件或文件夹,并不能去操作文件中的数据。真正保存数据的是文...
    Villain丶Cc阅读 2,785评论 0 5
  • C/C++输入输出流总结 前两天写C++实习作业,突然发现I/O是那么的陌生,打了好长时间的文件都没有打开,今天终...
    LuckTime阅读 1,807评论 0 6
  • 一.java.io.File类 java.io.File类用于表示文件/目录 File只用于表示文件的信息(名称,...
    liangxifeng833阅读 827评论 0 1

友情链接更多精彩内容