首页 > 编程知识 正文

java导出csv设置文本格式,FileInputStream

时间:2023-05-03 16:47:49 阅读:44668 作者:271

前面介绍了如何应用输入流FileInputStream从本地文件读取数据。 本节介绍APP应用程序输出流FileOutputStream如何将数据写入本地文件。

在文件输出流中写入文件的过程如下:

使用FileOutputStream写入文件的过程与使用FileInputStream的过程相同,首先在File类中打开本地文件,实例化输入/输出流,然后读取/写入流

如何构建文件输出流

FileOutputStream提供了四种常见的构建方法来实例化FileOutputStream对象,每个场景都使用不同的构建方法。

使用场景File对象打开本地文件并从文件中导入数据。

不使用场景File对象,而是直接传递给文件路径。

使用FileOutputStream的构建方法,可以不使用File对象而直接传递到文件路径。 查看此构造方法的源代码时,发现File对象用于在内部打开文件。

场景3 :打开文件,将附加数据写入文件末尾。

场景必须将数据写入文件的末尾,但前面两个构造函数都无法使用前面两个场景的构造函数,因为文件开始写入数据(复盖原始文件)。 文件输出流有两种构建方法:

文件输出流(文件文件,布尔应用);

文件输出流(字符串名称,布尔应用程序;

与前面的生成方法相比,这两种生成方法分别添加了一个布尔参数append。 如果append参数为true,则从文件末尾写入数据; 如果append参数为false,则数据将复盖原始文件。

如何写入文件输出流

FileOutputStream类提供了多种单独从一个字节写入文件、从byte数组写入文件以及提取byte数组中的部分数据写入文件的方法。

示例1 :使用1:write(intb )方法写入文件。

示例程序首先调用File类的createNewFile ()创建new.txt文件,然后将str的内容写入新创建的new.txt文件中。

示例2 :使用2:write(byte ) b方法写入文件。

wite[byte[]b]方法用于将b.length字节从指定的byte数组写入输出流。

String类的getBytes ()方法将字符串转换为byte数组,并将使用FileOutputStream类的write[]b]方法转换的byte数组写入文件。

示例3 :使用3:write(byte[]b,int off,int len )方法写入文件。

此方法将len字节的数据从数组b的off位置写入输出流。

程序将指定的str内容写入文件。 fos.write(str.getbytes ),5,10 )语句的第一个参数是byte数组,第二个参数5从byte数组的下标5开始,第三个参数是写入的字节数。 运行程序后,写入的内容为“is new file”。

使用这种方法必须注意排列越界的问题。 例如,如果byte数组长度为20,并且将下标12到15个字节写入文件,则数组将越界,程序将报告错误。

示例使用文件输出流复制文件

文件复制是指将源文件中的数据写入新文件。 在实际编程中,有多种方法可以实现文件的复制,但在此情况下,使用FileInputStream和FileOutputStream来实现文件的复制。

代码中的copyFile完成文件的复制。 在复制之前,请确定源文件是否存在,并申请包含读取的源文件数据的字节数组。 此数组的大小与源文件的总字节数相同,导入成功后,将数组的内容写入目标文件。 程序的输出结果如下图所示。

知识点拨号

可以使用FileOutputStream流将字节数据写入目标文件。 文件输出流有两种方法:单字节写入和字节数组写入。 建议使用byte数组进行写入,将要写入的数据保存到byte数组中,然后写入文件。 如果写入的文件已经存在,则必须指定写入方式是复盖还是添加。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。