java_IO流之FileInputStream和FileOutputStream

手把手教你完成基于YOLOv8的水果/商品/食堂/蔬菜/饮料/书籍识别与计价系统,前台+后台管理系统 手把手教你完成基于YOLOv8的商店的水果/商品/食堂/蔬菜/饮料/书籍识别与计价系统,前台+后台管理员系统,可进行目标检测的操作和展示,实现对图片、视频和摄像头的实时目标检测 阅读详情

看,API说的多简单啊:

FileInputStream 用于读取诸如图像数据之类的原始字节流。要读取字符流,请考虑使用 FileReader。

FileOutputStream 用于写入诸如图像数据之类的原始字节的流。要写入字符流,请考虑使用 FileWriter。 


FileInputStream与FileOutputStream都是字节流,所以它们都是用来读byte与写byte的。

上例子:

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

public class FileStreamTest {

	public static void main(String[] args) {
		// writeTest();
		// readTest_1();
		// readTest_2();
		// readTest_3();
		// copyFile();
	}

	// 用字节流文件的读写。
	private static void copyFile() {
		FileInputStream fis = null;
		FileOutputStream fos = null;
		try {
			fis = new FileInputStream("F:\\library.rar");
			fos = new FileOutputStream("F:\\library_copy.rar");
			byte[] buf = new byte[1024];
			int len = 0;
			while ((len = fis.read(buf)) != -1) {
				fos.write(buf, 0, len);
			}
			System.out.println("复制完成");
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			try {
				if (fis != null) {
					fis.close();
				}
			} catch (IOException e) {
				e.printStackTrace();
			}
			try {
				if (fos != null) {
					fos.close();
				}
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
	}

	private static void readTest_3() {
		FileInputStream fis = null;
		try {
			fis = new FileInputStream("D:\\log.txt");
			// available()方法是用于创建一个大小刚刚适合的缓冲区,不过如果资源文件过大的话,很容易造成内在溢出的问题。
			byte[] buf = new byte[fis.available()];
			fis.read(buf);
			System.out.println(new String(buf));
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			try {
				if (fis != null) {
					fis.close();
				}
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
	}

	private static void readTest_2() {
		FileInputStream fis = null;
		try {
			fis = new FileInputStream("D:\\log.txt");
			byte[] buf = new byte[1024];
			int len = 0;
			while ((len = fis.read(buf)) != -1) {
				System.out.println(new String(buf, 0, len));
			}
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			try {
				if (fis != null) {
					fis.close();
				}
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
	}

	private static void readTest_1() {
		FileInputStream fis = null;
		try {
			fis = new FileInputStream("D:\\log.txt");
			int b = 0;
			while ((b = fis.read()) != -1) {
				System.out.println((char) b);
			}
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			try {
				if (fis != null) {
					fis.close();
				}
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
	}

	private static void writeTest() {
		FileOutputStream fos = null;
		try {
			fos = new FileOutputStream("D:\\log.txt");
			// 字节流操作的是字节数组。字符流操作的是字符数组。
			fos.write("abcdefg".getBytes());
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			try {
				if (fos != null) {
					fos.close();
				}
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
	}
}



6.8 点云相关软件——CoProcess 摘要 CoProcess是华测导航研发的三维点云全流程处理平台,支持海量数据浏览、编辑及多类型成果输出,适配地形测绘、道路建设等行业需求。软件采用模块化设计,包含基础功能(数据导入、分类、建模等)和行业定制模块(地形、道路、矿山等),支持多格式数据交互与自动化处理,显著提升作业效率。相比Lidar360,CoProcess操作更简便、性价比更高;相比开源工具CloudCompare,其行业适配性与专业功能更优。2025版本优化了数据处理性能与智能算法,需授权激活高级功能,适合商业项目应用。 阅读详情

相关推荐

CCS20实战入门:第一个工程搭建示例

通过实际操作演示如何在ccs20中创建并配置首个开发项目,涵盖环境设置与基础调试步骤,帮助新手快速上手ccs20集成开发环境,提升嵌入式开发效率。

weixin_31185473的博客 884

java.io.NotSerializableException异常的解决方案

先说解决方法再说原因 解决方法:报错信息会指示出问题的是哪个实体类,在该实体类的后面加上一句 “implements Serializable”,例如 import java.io.Serializable; public class User implements Serializable{ } 如果加了“implements Serializable”之后还是报错,你会发现报...

yilongchuan的博客 2万+

SAP MM委外加工保姆级教程:从BOM配置到MIGO发货的完整避坑指南

本文提供SAP MM模块中委外加工的完整操作指南,涵盖从BOM配置到MIGO发货的全流程。详细解析委外采购和工序委外两种模式,包括主数据配置、采购订单创建及物料移动等关键步骤,帮助用户规避常见错误,提升供应链管理效率。特别适合制造业企业实施SAP外包业务参考。

weixin_26905487的博客 527

java.io.NotSerializableException

我想以存储对象的方法,采取对象序列化方式将user类数据写入文件中,然后采用对象反序列化方式把产品数据从文件中读取出来。 //保存User对象u的信息到文件 //输入信息 public static void saveObj(User us) { try { FileOutputStream fo = new FileOutputSt...

一个程序媛的成长记录❤ 1万+

告别龟速计算!用Python的fengwo模块5分钟搞定通达信COST/WINNER函数(附完整代码)

本文介绍如何使用Python的fengwo模块高效复现通达信的COST和WINNER函数,解决量化交易中的计算精度和性能问题。通过C++核心算法和多线程优化,计算速度提升显著,误差低于0.5%,并支持与通达信DLL无缝集成,适用于实盘交易策略开发。

weixin_42533751的博客 600

手把手教你学Simulink实例--使用 Simulink 进行电力电子系统的小信号模型仿真

电力电子系统(Power Electronics System)包括各种功率转换器(如 DC-DC 转换器、逆变器等)。这些设备中的关键组件(如 MOSFET、IGBT、电容器、电感器等)不仅影响系统的性能,还直接关系到系统的稳定性、效率和可靠性。因此,在设计阶段进行详细的建模和仿真至关重要。小信号模型仿真的目的是通过线性化非线性系统来评估其动态特性,包括增益、相位裕度、带宽等指标。通过本教程,我们介绍了如何使用 Simulink 进行电力电子系统的小信号模型仿真。背景介绍。

MHD0815的博客 298

java notserializableexception,java.io.NotSerializableException

Java序列化的实现很简单,需要序列化的类实现Serializable接口;然后就可以使用ObjectOutStream的write()方法输出;反序列化:使用ObjectInputStream的read()方法即可输入;序列化和反序列化实现很简单,但是要注意实现Serializable接口的类中不能有其他类的实例化对象;即:如果这个类中还包含别的类的实例,那么被调用的类也需要实现Seriali...

weixin_33000813的博客 477

『MaxKB 2.x 开发环境搭建』在Windows下运行最新源码的完整步骤

本文将详细介绍如何在Windows系统中完成MaxKB最新版(2.x)开发环境的搭建,包括前端、后端以及数据库的配置,确保开发者能够顺利启动项目。

老陈聊架构 586

java.io.notserializableexception java序列化报错

数据结构中多增加了个字段,然后报错了,刚开始怎么都没想到,哈哈。~    解决此异常,一般大家知道方法就是,既然报没有序列化的错误,那我们就把我们的对象序列化了就是了,实现起来也很简单,就是把要放入对象序列化即可 public class YourClassName implements java.io.Serializable{ }        于是修改此类实现Serializ

野生码农 2万+

基于Python的异步爬虫实战:高效抓取同花顺概念板块数据

本文将详细介绍如何使用Python最新异步爬虫技术(requests-html+aiohttp+selenium)高效抓取同花顺概念板块数据。内容涵盖:反爬机制破解、动态页面渲染处理、数据解析存储等完整流程,并提供可复用的高性能爬虫代码实现。高性能:异步并发处理,QPS可达50+高可用:完善的异常处理机制可扩展:支持分布式部署增加历史数据回溯功能集成机器学习识别验证码构建实时数据推送系统。

2201_76125261的博客 1535

Aduino 通过I2C接口读取MPU6050模块数据

Aduino ESP9266通过I2C接口读取MPU6050模块数据 MPU6050模块 原理图 所需库:Adafruit_MPU6050 Adafruit_BusIO Adafruit Unified Sensor 接线示意图 ESP8266---MPU6050 VCC -- 3.3v GND -- GND D2 -- SDA D1 -- SCL 示例程序代码 #include <Adafruit_MPU6050.h> #include <Adafruit

perseverance51博客 621

如何解决 java.io.NotSerializableException: 对象不支持序列化问题?亲测有效的解决方法!

异常通常是由于对象的类或其成员没有实现接口。为了解决这个问题,我们需要确保需要序列化的类及其成员变量都实现了接口,或者使用transient关键字排除不需要序列化的字段。通过上述方法,你可以解决异常,并确保你的对象可以成功序列化和反序列化。

猿鹏探码的博客 8715

Android TV 遥控器全链路按键适配指南:从物理按键到应用响应

本文深入探讨了Android TV遥控器按键适配方案,涵盖红外和蓝牙遥控器的工作原理及完整适配流程。红外遥控部分详细介绍了从硬件调试、驱动适配到键值映射配置的方法,并提供了实用的调试命令。蓝牙遥控器部分解析了HID协议和报告描述符,给出内核层与Android层的适配代码示例。文章还介绍了游戏手柄、语音遥控器等特殊外设的适配技巧,并提供了系统级调试工具和内核级调试方法,为开发者提供了一套完整的Android TV输入设备适配解决方案。

学无止境 1266

【JAVA的 IO流之FileInputStream和FileOutputStream】

java的 IO流即输入输出流,流是一组有顺序的,有起点和终点的字节结合,是对数据传输的总称。即数据在两设备间的传输称为流,流的本质是数据传输。     IO流可以分为字节流和字符流。给出相应的IO结构图: 在接下来的一段时间里,将会慢慢介绍各种流的使用,本篇博客先介绍字节流的FileOutputStream和相对应的FileInputStream。 一.FileOutputSt

u014714340的专栏 666

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

【Java】IO流原理及流的分类(FileInputStream和FileOutputStream方法详解)

# 1.Java IO流原理 > 1.I/O是Input/Output的缩写,用于数据传输,读写文件网络通讯。 > 2.Java程序中,对于数据的输入/输出以流(stream)的方式进行。 # 2.InputStream字节输入流 > InputStream抽象类是所有类字节输入流的超类 > InputStream常用子类 > 1.FileInputStream:文件输入流 > 2.BufferedInputStream:缓冲字节输入流 > 3.ObjectInputStream:对象字节输入流 ##

qq_59708493的博客 698

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Java IO流的写入和写出操作 FileInputStream和FileOutputStream

今天学习了Java的IO流,关于文件的写入和写出,主要是FileInputStream和FileOutputStream,这两个流操作叫做字节流。还有字符流(FileReader和FileWriter),字符流只能处理文本文件,字节流可以处理图片,视频等。 话不多说,直接上代码。代码实现了一个文件的拷贝操作。 @Test public void test() { l...

guangtouwj的专栏 666

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

JAVA中常用IO流类:FileInputStream和FileOutputStream

FileInputStream 用于读取本地文件中的字节数据,继承自InputStream类 构造方法摘要 FileInputStream(File file)            通过打开一个到实际文件的连接来创建一个FileInputStrea

caixiexin的专栏 11万+

Java中io流的学习(二)FileInputStream和FileOutputStream

FileInputStream继承于InputStream,FileOutputStream继承于OutputStream,是用来对二进制文件进行操作的。InputStream和OutputStream是两个抽象类,是无法操作它的。相信很多初学的对这两个优点搞不懂,我们只需要记住,我们是不用操作InputStream和OutputStream的,我们操作的都是其的子类或者其子类的子类。 值得注意...

有问题请发邮箱dengyifanlittle@163.com进行讨论 5061

JAVA IO流之FileInputStream类和FileOutputStream类对文件进行读写操作的标准写法

FileInputStream类和FileOutputStream类的学习 JAVA IO流中主要可以分为字节流和字符流。FileInputStream类和FileOutputStream类它们分别是InputStream抽象类和 OutputStream抽象类的实现子类,都属于字节流。 1,FileInputStream简单使用 该类通过字节的方式读取文件,适合读取所有类型的文件(图像、视频) import java.io.File; import java.io.FileInputStream; imp

qq_43804570的博客 1088

Java IO流之FileInputStream和FileOutputStream分析

简介 FileInputStream和FileOutputStream分别是文件输入流和文件输出流,主要是用于读取图像,图片等原始字节流数据,如果读取的是文件数据,考虑使用字符流FileReader和FileWriter. FileInputStream介绍 1.构造方法 public FileInputStream(String name) public FileInputStream...

梦悠哉的博客 1074

java-io流之FileInputStream和FileOutputStream使用

/记录每次读入到buffer中字节的个数。

qq_50926201的博客 458

Java的IO流--FileInputStream和FileOutputStream

java的IO流分为字符流和字节流,字符流又分为字符输入流和字符输出流,字节流又分为字节输入流和字节输出流。 (这个图不完整,以后随着学习的进度慢慢补充)今天我们主要讲FileInputStream和FileOutputStream: 它们叫做文件输入流和文件输出流。1.FileInputStream能够将文件中的数据读取到内存中。 它有三个构造函数: ①FileInputStream(F

MindMrWang的blog 583

Java IO流实现文件的复制(FileInputStream和FileOutputStream)

无论是什么格式 只要是文件 都是以字节的方式存储在计算机中的 因此 使用字节流的方式 可以读写任意的文件 需要两个流 一读一写 一个读取被复制的文件 一个写到目标目录中 步骤: 1、创建一个字节输入流对象 构造方法中绑定要读取的数据源 2、创建一个字节输出流对象 构造方法中绑定要写入的目的地 3、使用字节输入流对象中的read()方法读取文件 4、使用直接输入流中的write()方法 将读取到的...

"✧treasure mountain✧" 7925

Java中,关于IO流中使用FileInputStream和FileOutputStream实现文件的复制

使用字节流对非文本文件进行读写操作 使用FileInputStream输入流: ①在try-catch-finally外面创建一个相应的流变量赋值null,因为关闭流的操作要在finally中,进行,如果将这个变量写在try-catch中,那么finally中将超出该变量的作用域 ②实例化File类的对象 ③流的实例化(通过1中的变量接收) ④数据对的读入 ⑤通过close()关闭流.注意:要判断2中的实例化是否成功,此时还会抛出异常,所以还要用一个try-catch来处理异常 使用FileOutputSt

✈ 正在努力 の 寒江(StudiousTiger) ✌ 呐 ✈ 715

Java中IO流——详解字节流之FileOutputStream和FileInputStream

文章目录前言一、Java流的概述二、常用字节流分类1.字节输出输入流1.FileOutputStream2.FileInputStream3.复制小练习4.异常捕获总结 前言 我们之前学习了Java中的异常机制和File类,现在正式进入IO流的学习。 一、Java流的概述 文件通常是由一连串的字节或字符构成。 组成文件的字节序列称为字节流。 组成文件的字符序列称为字符流。 Java中根据流的方向可以分为输入流和输出流。 输入流是将文件或其它输入设备的数据加载到内存的过程 输出流是将内存中的数据保存到

悬悬小的博客 816
上一篇: java关于Math类的使用
下一篇: java关于URL、URLEncoder、URLDecoder类的使用
Sweeter
博客等级 码龄14年 81粉丝 41原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值