Day16_97_IO_FileOutputStream 写入字节流
FileOutputStream 写入字节流
* java.io.OutPutStream -----> java.io.FileOutputStream 将计算机内存中的数据写于磁盘中.
* 创建字节输出流有两种方式
- 方式一: new FileOutputStream(fileName); 该种方式,没有添加追加操作,这样创建的输出流对象,如果执行第二次的话,第二次写入的内容会把第一次写入的内容覆盖掉。
- 方式二: new FileOutputStream(fileName,true); 该种方式,添加了追加操作,这样创建的输出流对象,执行第二次的话,不会覆盖第一次写入的内容,会在后边进行追加内容。
* 将字符串转换为byte[]数组: byte[] bytes=String str.getBytes();
* 两种写入方式:
- 方式一:将bytes数组中的数据,全部写入 fos.write(bytes);
- 方式二 : 将bytes数组中的一部分写入 fos.write(bytes, 0, 5); 表示从数组bytes的下标0开始写入,写入长度为5.
* fos.flush(); 清空内存缓冲区数据,从而保证完整写入
* 代码:
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class FileOutputStreamTest01 {
public static void main(String[] args) {
//创建文件路径
String fileName="D:\\TestFile\\JavaTestFile\\FileOutputStreamTest01.txt"; //该文件不存在的话 会自动创建
//创建文件字节输出流
FileOutputStream fos=null;
try {
//创建输出流
//方式一 不添加追加操作 这样创建输出流对象,如果执行第二次的话,第二次写入的内容会把第一次写入的内容覆盖掉
//fos=new FileOutputStream(fileName);
//方式二 添加追加操作 这样创建输出流对象,执行第二次的话,不会覆盖第一次写入的内容,会在后边进行追加内容
fos=new FileOutputStream(fileName,true);
//开始写入字节流操作
//创建要写入的对象
String message="Hello World!";
//创建byte数组
byte[] bytes=new byte[message.length()];
//将字符串转换为byte数组
bytes=message.getBytes();
//开始写入
// 写入方式一: 将bytes数组中的数据,全部写入。
//fos.write(bytes); // Hello World!
//方式二 : 将bytes数组中的一部分写入 表示从下标0开始写入,写入长度为5.
fos.write(bytes,0,5); // Hello
//强制写入
fos.flush();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if(fos!=null){
try {
System.out.println("写入成功");
//关闭流
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
Day16_97_IO_FileOutputStream 写入字节流的更多相关文章
- uniapp中拿到base64转blob对象,或base64转bytes字节数组,io操作写入字节流文件bytes
1. uniAPP中拿到附件的base64如何操作,如word文件 /*** 实现思路:* 通过native.js的io操作创建文件,拿到平台绝对路径* 再通过原生类进行base64解码,拿到字节流b ...
- File相关的读取和写入以及复制
import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.File;import java.io.FileI ...
- 读取 java.nio.ByteBuffer 中的字符串(String) 写入方式flash.utils.ByteArray.writeUTF
通过研究ByteArray的写入格式以及方法说明,可以发现writeUTF是先使用2位写入字符串的长度,然后在其后写入字符串编码. flash.utils.ByteArray.writeUTF(val ...
- Java基础---IO(一)---IO流概述、字符流、字节流、流操作规律
第一讲 IO概述 概述 1.IO流:即InputOutput的缩写. 2.特点: 1)IO流用来处理设备间的数据传输. 2)Java对数据的操作是通过流的方式. 3)Java用于操作流的对象都 ...
- Struts的文件上传下载
Struts的文件上传下载 1.文件上传 Struts2的文件上传也是使用fileUpload的组件,这个组默认是集合在框架里面的.且是使用拦截器:<interceptor name=" ...
- JAVA的序列化和持久化的区别与联系
持久化(Persistence) 即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘).持久化的主要应用是将内存中的对象存储在关系型的数据库中,当然也可以存储在磁盘文件中.XML数据文 ...
- android SharedPreferences 存储对象
我们知道SharedPreferences只能保存简单类型的数据,例如,String.int等. 如果想用SharedPreferences存取更复杂的数据类型(类.图像等),就需要对这些数据进行编码 ...
- 【转】输入/输出流 - 深入理解Java中的流 (Stream)
基于流的数据读写,太抽象了,什么叫基于流,什么是流?Hadoop是Java语言写的,所以想理解好Hadoop的Streaming Data Access,还得从Java流机制入手.流机制也是JAVA及 ...
- 黑马程序员_Java基础:序列化(Serializable)与反序列化
------- android培训.java培训.期待与您交流! ---------- 在学习IO中的ObjectOutputStream和ObjectInputStream时,会涉及到序列化和反序列 ...
随机推荐
- 开源OA办公平台搭建教程:O2OA+Arduino实现物联网应用(一)
O2OA平台是一个企业办公类系统的低代码开发平台,更够方便的开发和部署协同办公.流程管理等应用,但它能做的远不止这些,今天这个案例就为大家介绍一下,O2OA可以做的更多. 最近对养鱼产生了浓厚的兴趣, ...
- Navicat premium对数据库的结构同步和数据同步功能
一.在目标数据库新建一个相同的数据库名. 二.工具-->结构同步. 三.填写源数据库和目标数据库. 四.点击比对 五.点击部署 六.点击运行 七.点击关闭.此时源数据库的结构已经同步到目标数据库 ...
- virtualbox多个网卡添加(第5-8块儿)
virtualbox多个网卡添加(第5-8块儿) virtualbox默认只能启用4块网卡,如果4块网卡不够则需要通过命令添加.最多可以增加至8块 创建一个文件run.bat,添加如下内容到文件中,然 ...
- 清晰图解深度分析HTTPS原理
前言 很高兴遇见你~ Https现在基本已经覆盖所有的http请求了,作为一个伟大的发明,保障了我们的通信安全.在Android中对于HTTPS其实感知不多,因为这些内容都有成熟的框架帮我们完成了,例 ...
- 京东 Vue3 组件库闪亮登场
京东零售开源项目 NutUI 是一套京东风格的轻量级移动端 Vue 组件库,是开发和服务于移动 Web 界面的企业级产品.经过长时间的开发与打磨,NutUI 3.0 终于要和大家见面了!3.0 版本在 ...
- Ubuntu小配置
Ubuntu 拍摄快照 在虚拟机安装好.配置号后各拍摄一次快照,并存储. 可在虚拟机出错后回滚 Root用户 Ubuntu默认不能以 Root用户身份直接登录 因此,正常操作时在需要调用 root权限 ...
- 我给Apache顶级项目贡献了点源码。
这是why技术的第 91 篇原创文章 这篇文章其实并没有什么技术性的分享,从我的角度而言,更多是记录和思考. 把我对于源码和之前写的部分文章反哺给我的一些东西,带来的一点点思考分享给大家. 一行源码 ...
- FreeBSD WIFI 配置详细介绍
首先运行ifconfig,看看能不能找到你的网卡,如果能,那么你可以走了﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉运行sysctl net.wlan.devices,他可以告诉你,找到的无线网卡编辑/b ...
- docker+compose+nginx+php
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化. 我用docker做什么? 快速搭建开发所需环境,测试实验新 ...
- div+伪元素实现太极图
需求:使用div和伪元素实现阴阳太极图 图例: 代码: <html> <head> <title>太极图</title> <style type= ...