java基础day18

Day18
一、InputStream字节输入流、OutputStream字节输出流(抽象类)

1、把硬盘的数据读取到内存中,称为输入流;把内存的数据写入硬盘中,称为输出流
2、使用流的时候:

  • 所有导入java.io下的jar包;
  • 需要注意异常;
  • 关闭流,释放资源;

3、OutputStream的常规方法:

  • public void close():关闭与释放资源;
  • public void flush():强制性刷新缓存区;
  • public void write(byte[] b):将字节数组中的数据写入到输出流里;
  • public void write(byte[] b,int off,int len):将字节数组的数据指定区间写入到输出流里;
  • public abstract void write(int b):将单个字节写入到输出流里;

4、OutputStream的子类为:ByteArrayOutputStream字节输出流;FileOutputStream文件输出流(重点);FilterOutputStream过滤器输出流;ObjectOutputStream对象输出流;PipedOutputStream管道输出流
5、FileOutputStream:一般用于向文件写入数据
(1)构造方法:public FileOutputStream(File file);public FileOutputStream(String name);public FileOutputStream(String name,boolean append)append默认是false,表示覆盖

  • 实例化FileOutputStream的一个对象
  • 如果这个文件不存在,会默认创建这个文件
  • 把FileOutputStream指向需要写入数据的位置(文件)
写入数据的原理:java-->jvm-->OS(操作系统)-->调用系统的写入方法  

(2)写入数据的基本步骤:实例化对象==》调用其写入方法==》关闭资源
6、BufferedOutputStream是FilterOutputStream的直接子类,内部封装了一个字节数组(自带缓冲区)
(1)构造方法:public BufferedOutputStream(OutputStream out)
(2)主要方法:

  • public void flush():刷新此缓冲的输出流(也就是把缓冲区的数据写入到文件里)
  • void write(byte[] b, int off, int len):将指定byte数组中从偏移量off开始的len个字节写入此缓冲的输出流;
  • void write(int b):要写入的字节的长度;

7、InputStream的常规方法:

  • public int available():返回的是当前输入流里的字节数;
  • public void close():关闭资源的方法;
  • public abstract int read():一个一个字节读取(返回值是读取的具体数据《内容为0-127,对应ASCAII码表,如果是其他,对应系统的编码格式返回int类型》返回-1,表示读取完毕),每调用一次,指针往后移一个单位;
  • public int read(byte[] b):把数组读取到字节数组里(数组就是缓冲区,一般数组长度为1024的倍数),返回值是读取的有效字符长度;
  • public int read(byte[] b,int off,int len):可以读取指定区间的数据,off起始位置,len长度;

8、InputStream的子类为:ByteArrayInputStream字节输入流;FileInputStream文件输入流;FilterInputStream过滤器输入流;ObjectInputStream对象输入流;PipedInputStream管道输入流;SequenceInputStream合并(流)输入流
9、FileInputStream:一般用于从文件中读取数据
(1)构造方法:public FileInputStream(File file);public FileInputStream(String name)

  • 创建FileInputStream的对象
  • 把FileInputStream对象指向需要读取的文件的位置
读取数据的原理:java-->jvm-->OS(操作系统)-->调用系统的读取方法  

(2)读取数据的基本步骤:实例化对象==》调用其读取方法==》关闭资源
10、BufferedInputStream是FilterInputStream的直接子类,内部封装了一个字节数组(自带缓冲区)
(1)构造方法:public BufferedInputStream(InputStream in)
(2)读取方法:public int read();public int read(byte[] b,int off,int len);

Delphi 12.3 作为一款面向 Windows 平台的集成开发环境,由 Embarcadero Technologies 负责其持续演进。该环境以 Object Pascal 语言为核心,并依托 Visual Component Library(VCL)框架,广泛应用于各类桌面软件、数据库系统及企业级解决方案的开发。在此生态中,Excel4Delphi 作为一个重要的社区开源项目,致力于搭建 Delphi 与 Microsoft Excel 之间的高效桥梁,使开发者能够在自研程序中直接调用 Excel 的文档处理、工作表管理、单元格操作及宏执行等功能。 该项目以库文件与组件包的形式提供,开发者将其集成至 Delphi 工程后,即可通过封装良好的接口实现对 Excel 的编程控制。具体功能涵盖创建与编辑工作簿、格式化单元格、批量导入导出数据,乃至执行内置公式与宏指令等高级操作。这一机制显著降低了在财务分析、报表自动生成、数据整理等场景中实现 Excel 功能集成的技术门槛,使开发者无需深入掌握 COM 编程或 Excel 底层 API 即可完成复杂任务。 使用 Excel4Delphi 需具备基础的 Delphi 编程知识,并对 Excel 对象模型有一定理解。实践中需注意不同 Excel 版本间的兼容性,并严格遵循项目文档进行环境配置与依赖部署。此外,操作过程中应遵循文件访问的最佳实践,例如确保目标文件未被独占锁定,并实施完整的异常处理机制,以防数据损毁或程序意外中断。 该项目的持续维护依赖于 Delphi 开发者社区的集体贡献,通过定期更新以适配新版开发环境与 Office 套件,并修复已发现的问题。对于需要深度融合 Excel 功能的 Delphi 应用而言,Excel4Delphi 提供了经过充分测试的可靠代码基础,使开发团队能更专注于业务逻辑与用户体验的优化,从而提升整体开发效率与软件质量。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值