Java_FileInputStream及FileOutputStream详解_java文件拷贝的实现

2023-11-03 16:18

本文主要是介绍Java_FileInputStream及FileOutputStream详解_java文件拷贝的实现,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

      • 2.6.3 FileInputStream与FileOutputStream的使用
        • 2.6.3.1 FileInputStream类的的使用
        • 2.6.3.2 FileOutputStream类的使用方法
      • 2.6.4 使用字节流实现文件复制
      • 2.6.5 更多java知识请点击连接:

2.6.3 FileInputStream与FileOutputStream的使用

2.6.3.1 FileInputStream类的的使用

1.FileInputStream的构造方法

  • new FileInputStream(String name) :从指定路径获得数据源,若文件不存在则抛异常
FileInputStream f = new FileInputStream("D:\\a.txt");
  • new FileInputStream(File file) 搭建一个File类的对象file对应的文件的数据流通道,文件不存在则抛异常
        File fileA = new File("D:\\b.txt");fileA.createNewFile();FileInputStream f = new FileInputStream(name); 
  • new FileInputStream(FileDescriptor fdObj) 搭建一个与FileDescriptor类对象描述的文件连接的数据流管道
        FileDescriptor a =new FileDescriptor();FileInputStream f = new FileInputStream(a);

2.FileInputStream的普通方法

  • read() :从这个输入流一次读取一个字节的数据

  • read(byte b[]):读取数据源的全部数据放到b byte数组中。

  • read(byte b[], int off, int len):从该输入流读取到字节数据。放入一个字节数组。off:数据中的起始偏移量(下标从0开始),len:写入的字数。

  • skip(long n):从当前位置跳过n个字节数。如一个文件中有ILOVEYOU内容

byte b[] =new byte[10];
long aa =4L;
f.skip(aa);
f.read(b)
//则b中只存有EYOU内容
  • available():返回可以读取的剩余字节数的估计值。

  • close():关闭流

  • getFD(): 获得FileDescriptor文件描述符

  • getChannel():返回文件通道

2.6.3.2 FileOutputStream类的使用方法

1.FileOutputStream的构造方法

构造方法用法与FileInputStream构造方法基本一致,详参FileInputStream构造方法

  • FileOutputStream(File file)
    创建文件输出流以写入由指定的 File对象表示的文件。如原文件中有数据,默认覆盖数据。
        File fileA = new File("D:\\b.txt");fileA.createNewFile();FileOutputStream f = new FileOutputStream(fileA); 
  • FileOutputStream(File file, boolean append)
    创建文件输出流以写入由指定的 File对象表示的文件。跟上一个布尔值,如true则表示如果原文件中有内容,则在此基础上追加写入数据而不覆盖。
FileOutputStream f = new FileOutputStream("D:\\a.txt",true)
  • FileOutputStream(FileDescriptor fdObj)
    创建文件输出流以写入指定的文件描述符,表示与文件系统中实际文件的现有连接。
  • FileOutputStream(String name)
    创建文件输出流以指定的名称写入文件。
  • FileOutputStream(String name, boolean append)
    创建文件输出流以指定的名称写入文件。跟上一个布尔值,如true则表示如果原文件中有内容,则在此基础上追加写入数据而不覆盖。

2.FileOutputStream的普通方法

  • write(int b) 将一个指定的整型数据写入输出流指向的文件
write(f.read()) //将输入流f当前读到的一个字节写入到输出流指向的文件中
write(99)  //将ASCLL码表中小写字母c对应的十进制整数99写入到输出流指向的文件中
  • write(byte b[]):从指定字节数组写入

  • write(byte b[], int off, int len)F:从指定字节数组写入。off:数据中的起始偏移量,len:写入的字数。

  • close():关闭流

  • getChannel():返回文件通道:

  • getFD():获得FileDescriptor文件描述符

2.6.4 使用字节流实现文件复制

将D:\b.txt中的内容复制到D:\新建文本.txt中去

public class TestFileInputStream {public static void main(String[] args) throws IOException {File name1 = new File("D:\\b.txt");name1.createNewFile();FileInputStream f = new FileInputStream(name1);FileOutputStream k = new FileOutputStream("D:\\新建文本.txt");byte[] b= new byte[(int) name1.length()];f.read(b);k.write(b);f.close();k.close();}}

2.6.5 更多java知识请点击连接:

Scorpicat的博文←

这篇关于Java_FileInputStream及FileOutputStream详解_java文件拷贝的实现的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/339378

相关文章

一文详解如何在idea中快速搭建一个Spring Boot项目

《一文详解如何在idea中快速搭建一个SpringBoot项目》IntelliJIDEA作为Java开发者的‌首选IDE‌,深度集成SpringBoot支持,可一键生成项目骨架、智能配置依赖,这篇文... 目录前言1、创建项目名称2、勾选需要的依赖3、在setting中检查maven4、编写数据源5、开启热

C++中零拷贝的多种实现方式

《C++中零拷贝的多种实现方式》本文主要介绍了C++中零拷贝的实现示例,旨在在减少数据在内存中的不必要复制,从而提高程序性能、降低内存使用并减少CPU消耗,零拷贝技术通过多种方式实现,下面就来了解一下... 目录一、C++中零拷贝技术的核心概念二、std::string_view 简介三、std::stri

Python常用命令提示符使用方法详解

《Python常用命令提示符使用方法详解》在学习python的过程中,我们需要用到命令提示符(CMD)进行环境的配置,:本文主要介绍Python常用命令提示符使用方法的相关资料,文中通过代码介绍的... 目录一、python环境基础命令【Windows】1、检查Python是否安装2、 查看Python的安

C++高效内存池实现减少动态分配开销的解决方案

《C++高效内存池实现减少动态分配开销的解决方案》C++动态内存分配存在系统调用开销、碎片化和锁竞争等性能问题,内存池通过预分配、分块管理和缓存复用解决这些问题,下面就来了解一下... 目录一、C++内存分配的性能挑战二、内存池技术的核心原理三、主流内存池实现:TCMalloc与Jemalloc1. TCM

OpenCV实现实时颜色检测的示例

《OpenCV实现实时颜色检测的示例》本文主要介绍了OpenCV实现实时颜色检测的示例,通过HSV色彩空间转换和色调范围判断实现红黄绿蓝颜色检测,包含视频捕捉、区域标记、颜色分析等功能,具有一定的参考... 目录一、引言二、系统概述三、代码解析1. 导入库2. 颜色识别函数3. 主程序循环四、HSV色彩空间

HTML5 搜索框Search Box详解

《HTML5搜索框SearchBox详解》HTML5的搜索框是一个强大的工具,能够有效提升用户体验,通过结合自动补全功能和适当的样式,可以创建出既美观又实用的搜索界面,这篇文章给大家介绍HTML5... html5 搜索框(Search Box)详解搜索框是一个用于输入查询内容的控件,通常用于网站或应用程

Java对异常的认识与异常的处理小结

《Java对异常的认识与异常的处理小结》Java程序在运行时可能出现的错误或非正常情况称为异常,下面给大家介绍Java对异常的认识与异常的处理,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参... 目录一、认识异常与异常类型。二、异常的处理三、总结 一、认识异常与异常类型。(1)简单定义-什么是

SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志

《SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志》在SpringBoot项目中,使用logback-spring.xml配置屏蔽特定路径的日志有两种常用方式,文中的... 目录方案一:基础配置(直接关闭目标路径日志)方案二:结合 Spring Profile 按环境屏蔽关

Python实现精准提取 PDF中的文本,表格与图片

《Python实现精准提取PDF中的文本,表格与图片》在实际的系统开发中,处理PDF文件不仅限于读取整页文本,还有提取文档中的表格数据,图片或特定区域的内容,下面我们来看看如何使用Python实... 目录安装 python 库提取 PDF 文本内容:获取整页文本与指定区域内容获取页面上的所有文本内容获取

基于Python实现一个Windows Tree命令工具

《基于Python实现一个WindowsTree命令工具》今天想要在Windows平台的CMD命令终端窗口中使用像Linux下的tree命令,打印一下目录结构层级树,然而还真有tree命令,但是发现... 目录引言实现代码使用说明可用选项示例用法功能特点添加到环境变量方法一:创建批处理文件并添加到PATH1