Java文件(io)编程_文件字节流的使用方法

发布时间 - 2026-01-11 02:44:21    点击率:

案例1:

演示FileInputStream类的使用(用FileInputStream的对象把文件读入到内存)

首先要在E盘新建一个文本文件,命名为test.txt,输入若干字符

public class Demo_2 {

  public static void main(String[] args) {
    File f=new File("e:\\test.txt");      //得到一个文件对象f,指向e:\\test.txt
    FileInputStream fis=null;
    
    try {
      fis=new FileInputStream(f);       //因为File没有读写的能力,所以需要使用FileInputStream

      byte []bytes=new byte[1024];      //定义一个字节数组,相当于缓存
      int n=0;                //得到实际读取到的字节数
      
      while((n=fis.read(bytes))!=-1){     //循环读取
        String s=new String(bytes,0,n);   //把字节转成String
        System.out.println(s);
      }
      
    } catch (Exception e) {
      e.printStackTrace();
    }finally{                  //关闭文件流必须放在这里
      try {
        fis.close();
      } catch (IOException e) {
        e.printStackTrace();
      }
    }
  }
}

运行程序,控制台输出test.txt中输入的字符。

案例2:

演示FileOutputStream的使用(把输入的字符串保存到文件中)

public class Demo_3 {

  public static void main(String[] args) {

    File f=new File("e:\\ss.txt");
    FileOutputStream fos=null;      //字节输出流
    
    try {
      fos=new FileOutputStream(f);
      
      String s="你好,疯子!\r\n";   //\r\n为了实现换行保存
      String s2="24个比利";

      fos.write(s.getBytes());
      fos.write(s2.getBytes());
    } catch (Exception e) {
      e.printStackTrace();
    }finally{
      try {
        fos.close();
      } catch (IOException e) {
        e.printStackTrace();
      }
    }
  }
}

打开E盘名为ss.txt的文本文档,存在输入的字符。

 案例3:图片拷贝

首先在E盘准备一张图片,命名为a.jpg

public class Demo_4 {

  public static void main(String[] args) {
    //思路 先把图片读入到内存,再写入到某个文件
    //因为图片是二进制文件,只能用字节流完成

    FileInputStream fis=null;         //输入流
  
    FileOutputStream fos=null;        //输出流
    try {
      fis=new FileInputStream("e:\\a.jpg");
      fos=new FileOutputStream("d:\\a.jpg");
      
      byte []bytes=new byte[1024];
      int n=0;               //记录实际读取到的字节数
      while((n=fis.read(bytes))!=-1){    //read函数返回读入缓冲区的字节总数  
        fos.write(bytes);         //输出到指定文件
      }
    } catch (Exception e) {
      e.printStackTrace();
    }finally{
      try {
        fis.close();
        fos.close();
      } catch (Exception e) {
        e.printStackTrace();
      }    
    }  
  }
}

打开D盘,点击a.jpg,图片正常显示即运行成功。

以上这篇Java文件(io)编程_文件字节流的使用方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。


# java  # io  # 字节流  # Java编程中字节流与字符流IO操作示例  # java IO 字节流详解及实例代码  # Java中IO流 字节流实例详解  # 【Java IO流】字节流和字符流的实例讲解  # 详解Java中IO字节流基本操作(复制文件)并测试性能  # Java字节流和字符流总结IO流!  # Java 超详细讲解IO操作字节流与字符流  # Java I/O (Input/Output)文件字节流举例详解  # 给大家  # 比利  # 命名为  # 放在  # 要在  # 希望能  # 这篇  # 先把  # 小编  # 转成  # 大家多多  # 文本文件  # 正常显示  # 新建一个  # 换行  # 再写  # 你好  # 文档  # void  # main 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel如何生成和使用数据填充?(Seeder和Factory示例)  Win11搜索栏无法输入_解决Win11开始菜单搜索没反应问题【技巧】  网站制作大概要多少钱一个,做一个平台网站大概多少钱?  ChatGPT回答中断怎么办 引导AI继续输出完整内容的方法  HTML5段落标签p和br怎么选_文本排版常用标签对比【解答】  laravel怎么配置Redis作为缓存驱动_laravel Redis缓存配置教程  如何在万网利用已有域名快速建站?  Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】  如何快速搭建FTP站点实现文件共享?  Laravel如何处理CORS跨域请求?(配置示例)  网站建设要注意的标准 促进网站用户好感度!  javascript中的数组方法有哪些_如何利用数组方法简化数据处理  Laravel如何使用Contracts(契约)进行编程_Laravel契约接口与依赖反转  javascript日期怎么处理_如何格式化输出  文字头像制作网站推荐软件,醒图能自动配文字吗?  免费网站制作appp,免费制作app哪个平台好?  Laravel如何使用查询构建器?(Query Builder高级用法)  Laravel如何与Inertia.js和Vue/React构建现代单页应用  Python图片处理进阶教程_Pillow滤镜与图像增强  Android okhttputils现在进度显示实例代码  EditPlus中的正则表达式 实战(4)  如何利用DOS批处理实现定时关机操作详解  Laravel怎么实现搜索功能_Laravel使用Eloquent实现模糊查询与多条件搜索【实例】  Python自然语言搜索引擎项目教程_倒排索引查询优化案例  edge浏览器无法安装扩展 edge浏览器插件安装失败【解决方法】  Python文件异常处理策略_健壮性说明【指导】  Laravel Eloquent访问器与修改器是什么_Laravel Accessors & Mutators数据处理技巧  香港服务器建站指南:外贸独立站搭建与跨境电商配置流程  Android利用动画实现背景逐渐变暗  如何用5美元大硬盘VPS安全高效搭建个人网站?  Laravel如何清理系统缓存命令_Laravel清除路由配置及视图缓存的方法【总结】  Laravel如何使用.env文件管理环境变量?(最佳实践)  什么是JavaScript解构赋值_解构赋值有哪些实用技巧  Laravel如何发送系统通知_Laravel Notifications实现多渠道消息通知  如何打造高效商业网站?建站目的决定转化率  如何在HTML表单中获取用户输入并用JavaScript动态控制复利计算循环  如何获取上海专业网站定制建站电话?  如何在企业微信快速生成手机电脑官网?  Android使用GridView实现日历的简单功能  php结合redis实现高并发下的抢购、秒杀功能的实例  浅谈redis在项目中的应用  Laravel如何使用Sanctum进行API认证?(SPA实战)  Laravel如何使用Eloquent进行子查询  Windows10如何删除恢复分区_Win10 Diskpart命令强制删除分区  HTML 中如何正确使用模板变量为元素的 name 属性赋值  Python并发异常传播_错误处理解析【教程】  Bootstrap CSS布局之列表  百度输入法ai组件怎么删除 百度输入法ai组件移除工具  在centOS 7安装mysql 5.7的详细教程  如何为不同团队 ID 动态生成多个独立按钮