IO流《字节流、字符流、转换流》

”COMSOL“竟然如此简单!我悟了!! COMSOL Multiphysics具有强大的多物理场全耦合仿真分析功能、高效的计算性能,可以保证数值仿真的高度精确,已被广泛应用于各个学科领域,近年来运用COMSOL来解决电化学实际工程问题也越来越普遍。 阅读详情

字节流读取文本文件的问题

当文本文件中存在汉字和字母的时候,由于汉字和字母占用的字节数不一样,再读取的时候就可能产生乱码的问题。

假设有一个a.txt文件

a你好bc

使用下面的FileInputStream读取文件中的字节,把字节转成字符串就有乱码问题。

FileInputStream fis=new FileInputStream("myModule12\\a.txt");
//一次读取多个字节
byte[] bs=new byte[2];
int len; //记录每次读取的字节个数
while ((len=fis.read(bs))!=-1){
    //把字节数组转换为一个字符串
    System.out.println(new String(bs,0,len));
}

常见的字符编码

ASCII: 美国信息交换码表,包含一些字母、数字、标点符号
	一个字符占1个字节

GBK: 中国人的码表,兼容ASCII编码,还包含汉字、日韩文字
	一字母占1个字节
	一个汉字占2个字节

UTf-8:万国码,包含各个国家的文字
	一字母占1个字节
	一个汉字占3个字节
	
注意:当读取数据写如数据的文件编码不一致,就会产生乱码问题。

字符串编解码

//编码:把字符串转换为字节数组
byte[] bytes1 = "你好世界".getBytes();
System.out.println(Arrays.toString(bytes1));

byte[] bytes2 = "你好世界".getBytes("GBK");
System.out.println(Arrays.toString(bytes2));


//解码:把字节数组转换为字符串
String str = new String(bytes1);
System.out.println(str);

String str2 = new String(bytes2,"GBK");
System.out.println(str2);

字符流

Java的API中,为了解决前面的乱码问题,专门提供了类流用来对文本文件进行操作。Reader和Writer

Reader: 字符输入流(读取字符)
	-- FileReader
	-- BufferedReader
    
Writer: 字符输出流(写入字符)
    -- FileWriter
    -- BufferedWriter

IO流的使用步骤

1.创建流对象(搭桥)
    Reader
    	--FileReader
    	--BufferedReader
    Writer
    	--FileWriter
    	--BufferedWriter
2.读/写数据(过桥)
    read
    write
3.释放资源(过河拆桥)
    close

字符流读取数据

一次读取一个字符

//字符输入流
FileReader fr=new FileReader("myModule12\\a.txt");

//循环读取,一次读一个字符
int b; //记录每次读取的字符
while ((b=fr.read())!=-1){
    System.out.print((char) b);
}

//释放资源
fr.close();

一次读取多个字符

//创建输入流对象
FileReader fr=new FileReader("myModule12\\a.txt");

//读取数据: 一次读取多个字符
char[] chs=new char[1024];
int len; //记录每次读取的字符个数
while ((len=fr.read(chs))!=-1){
    //把字符数组的一部分,转换为字符串
    String str=new String(chs,0,len);
    System.out.println(str);
}

//释放资源
fr.close();

字符流写入数据

//创建输出流对象FileWriter
//如果文件不存在,会自动创建
//如果文件存在,就会覆盖原来的文件
FileWriter fw=new FileWriter("myModule12\\b.txt");

//写一个字符
fw.write(97); //写97对应的是 字符‘a’

//写多个字符
char[] chs={'h','e','l','l','o'};
fw.write(chs); 

//写一个字符数组的一部分
fw.write(chs,0,3);

//写一个字符串
fw.write("你好世界");

//写一个换行符
fw.write("\r\n");

fw.write("你好世界",0,2);

//释放资源
fw.close();

字符流复制文件

//源文件:a.txt ,使用FileReader进行读取
FileReader fr=new FileReader("myModule12\\a.txt");
//目标文件:b.txt,使用FileWriter进行写入
FileWriter fw=new FileWriter("myModule12\\b.txt");

//一边读,一遍写
char[] chs=new char[1024];
int len; //记录每次读取的字符个数
while ((len=fr.read(chs))!=-1){
    //把读取到的有效字符,写入到目标文件
    fw.write(chs,0,len);
}

//释放资源
fw.close();
fr.close();

字符缓冲流提高读写效率

BufferedReader和BufferedWriter是一个包装流,它的读和写依赖于Reader和Writer,在内部有一个缓冲区数组,可以提高读写的效率。

//源文件:a.txt ,使用FileReader进行读取
//FileReader fr=new FileReader("myModule12\\a.txt");
BufferedReader br=new BufferedReader(new FileReader("myModule12\\a.txt"));

//目标文件:b.txt,使用FileWriter进行写入
//FileWriter fw=new FileWriter("myModule12\\b.txt");
BufferedWriter bw=new BufferedWriter(new FileWriter("myModule12\\b.txt"));

//一边读,一遍写
char[] chs=new char[1024];
int len; //记录每次读取的字符个数
while ((len=br.read(chs))!=-1){
    //把读取到的有效字符,写入到目标文件
    bw.write(chs,0,len);
}

//释放资源
bw.close();
br.close();

使用BufferedReader和BufferedWriter缓冲流读取写数据,一次读写一行

BufferedReader 有一个读取一个行的方法  readLine()
    
BufferedWriter 有一个写换行符的方法  newLine(); //具有跨平台性
	Win: \r\n
	Linux: \r
	Mac:  \n
//源文件:a.txt ,使用FileReader进行读取
BufferedReader br=new BufferedReader(new FileReader("myModule12\\a.txt"));
//目标文件:b.txt,使用FileWriter进行写入
BufferedWriter bw=new BufferedWriter(new FileWriter("myModule12\\b.txt"));

//读一行,写一行
String line; //每次读取的行
while ((line=br.readLine())!=null){
    //把读取的每一行,写入到目标文件
    bw.write(line);
    //bw.write("\r\n");  //Win: \r\n  Linux: \r Mac \n
    bw.newLine(); //写一个换行符,具有跨平台性,
}

//释放资源
bw.close();
br.close(); 

close和flush的区别

flush: 把流中缓冲的数据刷新到文件中
close: 先自动刷新,再释放资源。

文件续写

//字符流,参数true表示可以续写
FileWriter fw=new FileWriter("myModule12\\a.txt",true);
fw.write("world");
fw.close();

//字节流,参数true表示可以续写
FileOutputStream fos=new FileOutputStream("myModule12\\a.txt",true);
fos.write("world".getBytes());
fos.close();

字符转换流

字符转换流解决乱码问题

Java的API中提供的字符流FileReader和FileWriter默认是按照UTF-8编码进行读和写的。

为了读写其他编码的文件,Java的API又提供了InputStreamReader和OutputStreamWriter两个流,可以指定编码进行读和写。

  • 使用InputStreamReader读取指定编码的文本文件

  • FileInputStream fis = new FileInputStream("C:\\Users\\Desktop\\a.txt");
    //把FileInputStream读取的字节数,按照GBK编码进行转换
    InputStreamReader isr=new InputStreamReader(fis,"GBK");
    
    //一次读取多个字符
    char[] chs=new char[1024];
    int len; //记录每次读取的字符个数
    while ((len=isr.read(chs))!=-1){
        //把数组转好为字符串
        String str=new String(chs,0,len);
        System.out.println(str);
    }
    
    isr.close();

    使用OutputStreamWriter写入指定编码的文件

  • FileOutputStream fos = new FileOutputStream("C:\\Users\\Desktop\\b.txt");
    //把FileOutputStream + 编码表 转换为 OutputStreamWriter
    OutputStreamWriter osw=new OutputStreamWriter(fos,"GBK");
    
    //写数据
    osw.write("hello你好");
    
    char[] chs={'h','e','l','l','o'};
    osw.write(chs);
    
    //释放资源
    osw.close();

    把a.txt(GBK编码)文件中的字符,写入到b.txt(UTF-8)文件中。

  • //使用InputStreamReader流,指定编码GBK读取a.txt文件
    FileInputStream fis = new FileInputStream("C:\\Users\\Desktop\\a.txt");
    InputStreamReader isr=new InputStreamReader(fis,"GBK");
    
    //使用OutputStreamWriter流,指定编码UTF-8写入b.txt文件
    FileOutputStream fos=new FileOutputStream("C:\\Users\\Desktop\\b.txt");
    OutputStreamWriter osw=new OutputStreamWriter(fos,"UTF-8");
    
    //读写数据
    char[] chs=new char[1024];
    int len; //记录每次读取到的字符个数
    while ((len=isr.read(chs))!=-1){
        osw.write(chs,0,len);
    }
    
    //释放资源
    osw.close();
    isr.close();

    使用缓冲流进行包装

  • //使用InputStreamReader流,指定编码GBK读取a.txt文件
    FileInputStream fis = new FileInputStream("C:\\Users\\Desktop\\a.txt");
    InputStreamReader isr=new InputStreamReader(fis,"GBK");
    BufferedReader br=new BufferedReader(isr);
    
    //使用OutputStreamWriter流,指定编码UTF-8写入b.txt文件
    FileOutputStream fos=new FileOutputStream("C:\\Users\\Desktop\\b.txt");
    OutputStreamWriter osw=new OutputStreamWriter(fos,"UTF-8");
    BufferedWriter bw=new BufferedWriter(osw);
    
    //读写一行数据
    String line;
    while((line=br.readLine())!=null){
        bw.write(line);
        bw.newLine(); //换行
    }
    
    //释放资源
    br.close();
    bw.close();

    对象流(序列化流)

  • Java的API提供了ObjectInputStream和ObjectOutputStream用来读对象和写对象。
    ObjectOutputStream序列化流: 写对象
    ObjectInputStream反序列化流:读对象
    
    注意:被序列化和反序列化的对象,必须实现一个接口Serializable(这个接口仅仅起到一个标记的作用)
    //创建序列化流(对象输出流)
    ObjectOutputStream oos=new ObjectOutputStream(new FileOutputStream("myModule12\\a.txt"));
    GirlFriend gf=new GirlFriend("翠花",18,165,100);
    //写对象
    oos.writeObject(gf);
    
    //反序列化流(对象输入流)
    ObjectInputStream ois=new ObjectInputStream(new FileInputStream("myModule12\\a.txt"));
    Object obj = ois.readObject();
    System.out.println(obj); 

    序列号冲突问题

  • 问题:
    	每次编译源代码都会自动生成一个序列号,如果修改了源代码序列化和反序列化的序列号就会不一致。这个时候会导		致序列号冲突。
    
    解决办法:
    	在源代码中,写一个固定的序列号,固定写法
    	private static final long serialVersionUID = -68497944707523234L;

    标准的输入输出流【了解】

    System.in: 标准的输入流,读取键盘录入的数据
    System.out: 标准的输出流,往控制台输出

    Properties类

Properties是Map的子类,是一个双列集合,键和值都是字符串类型。Map集合的方法它都能使用。

但是推荐是Properties自己特有的方法,对集合进行操作。

public Object setProperty(String key, String value)  
	添加键和值,如果键重复,旧值会被覆盖. 类似Map的put()方法
public String getProperty(String key) 
    据键获取值. 类似Map的get()方法
public Set<String> stringPropertyNames()
    获取键的集合. 类似Map的keySet()

Properties pro=new Properties();

//使用Properties集合的特有方法,存储键-值
pro.setProperty("张三","18");
pro.setProperty("李四","20");
pro.setProperty("王五","19");
pro.setProperty("王五","22"); 

//通过键,获取值
String obj = pro.getProperty("李四");
System.out.println(obj);

//遍历
Set<String> keys = pro.stringPropertyNames();
for (String key : keys) {
    String vlaue = pro.getProperty(key);
    System.out.println(key+"..."+vlaue);
} 

Properties提供了两个和IO流相关的方法,用来把键值对存储到文件和读取键值对到集合。

public void store(OutputStream out, String comments) 
    把集合中的键和值存储到文件中
public void load(Reader reader)
    把文件中的键和值读取到集合中
Properties pro=new Properties();
pro.setProperty("zhangsan","20");
pro.setProperty("lis","28");
pro.setProperty("wangwu","21");

//把集合中的键和值,写到文件中
pro.store(new FileWriter("myModule12\\a.txt"),null);

//读取文件中的键和值读取到集合
pro.load(new FileReader("myModule12\\a.txt"));
System.out.println(pro);

Properties集合一般和软件的配置文件一起使用,把软件的相关配置写成一个文件,在文件中键值对的形式来保存配置信息。

Properties pro=new Properties();
// 1.读取配合文件中键对应的值
pro.load(new FileReader("myModule12\\a.txt"));
// 2.把值转换为整数,判断整数是否>0,说明还有使用次数
String count = pro.getProperty("count");
int value = Integer.parseInt(count);
if(value>0){
    System.out.println("欢迎使用");
    //每次使用之后,需要修改配置文件的值,-1
    value--;
    pro.setProperty("count",value+"");
    //把集合中的键和值写到文件中
    pro.store(new FileWriter("myModule12\\a.txt"),null);
}else{
    System.out.println("使用次数已到");
}

轻量化部署实战:C#上位机集成AI模型的3种方案深度对比(ML.NET/ONNX/TensorFlow.NET) C#上位机部署AI模型,核心不是“选最强大的方案”,而是“选最适配的方案”——工控机的低配置、高稳定性需求,决定了“轻量化”和“部署简单”是选型的首要原则。回顾3种方案:ML.NET:原生、轻量化、零依赖,适合传统ML场景,低配置工控机首选;ONNX Runtime:通用、平衡、易落地,适合深度学习场景,工业落地首选;TensorFlow.NET:强大、灵活、纯C#,适合复杂模型,高配置工控机首选。 阅读详情

相关推荐

手把手教你用Gazebo和VINS-MONO搞定VIO SLAM仿真(附Realsense D435i模型配置)

本文详细介绍了如何使用Gazebo和VINS-MONO构建VIO SLAM仿真环境,包括Realsense D435i模型的配置与集成。通过实战指南,帮助开发者快速搭建高保真仿真平台,优化VIO性能,并解决常见问题,适用于机器人感知与定位导航领域。

weixin_30682415的博客 158

【转】解决ObjectOutputStream连续…

转自:http://wenku.baidu.com/link?url=Z38XGYCGGWI14-lPP3T1TwjvHYEzHX0f5LcU7jRkzBwBMznm-usuIO8ba4h-7j2t3vtjzQM1ooYlpGU2HScHtjRFPxv6741Wz__ArS89K7e 如果是这样构建 ObjectOutputStream oos = new ObjectOutputStre

zhuzhixijiang 901

ROS2机械臂MPC轨迹规划实战:从MoveIt 2插件配置到参数调优全流程

本文详细介绍了ROS2机械臂MPC轨迹规划的全流程,从MoveIt 2插件配置到参数调优。通过模型预测控制(MPC)技术,实现高精度运动控制,特别适合复杂装配任务。文章包含环境搭建、插件部署、参数设计及实战调优方法,帮助开发者快速掌握ROS2机械臂的MPC轨迹规划技术。

i0j1k2l3m的博客 206

javascript document.write()覆盖原文档的问题

有时候使用javascript 中的document.write()函数,会将原来的html全部清除,然后写上新内容,但有时候不会 于是这种情况什么时候会出现呢?我搜了下: http://www.blogjava.net/JAVA-HE/archive/200

JXITC Studio 我的学习笔记 6520

蓝牙耳机充电仓——功能框架

数据传输:大部分充电仓会跟耳机通信,控制耳机开机、关机和进入可搜索模式等等。蓝牙耳机给大家的生活带来便利,来讲讲TWS蓝牙耳机的搭档充电仓吧!方便携带:如果耳机单独带着,指定能弄丢一个,有了充电仓就安全多了。收纳保护:把珍爱的耳机放入充电仓里,防止丢失、磕碰、刮花等。给耳机充电:提供电力补给,让耳机持续使用。

改变自己现在能改变的,珍惜自己现在所拥有的 8947

飞牛fnNAS虚拟机标准安装

飞牛NAS是一款基于Debian开发的国产免费NAS系统,支持x86架构设备,可将闲置硬件改造为NAS服务器。系统安装简便,支持多种存储模式与硬盘休眠功能,具备智能影视管理、照片备份等实用功能,并提供多种远程访问方式。飞牛NAS还支持Docker扩展,目前已承诺永久免费。文章详细介绍了在VMware虚拟机中安装飞牛NAS的步骤,包括下载镜像、创建虚拟机、初始化设置等过程,并展示了创建共享文件夹等基本操作,帮助用户快速上手这款功能强大的免费NAS系统。

dgnankai的专栏 3254

Java文件写入时是否覆盖

这个是和服务器读数据结合着来的,是向服务器文件写数据,这就碰到了是否覆盖以前写的数据的问题,看FileWriter();的参数后面的参数名叫append,用词典查是附加的意思,灵机一动,改成false不就不附加了吗,不就覆盖了吗,这都不用百度 了,呵呵俩false解决了我俩问题,呵呵呵呵,同上篇博文结合着看更好理解。try{Writerw=newFileWri...

weixin_34327223的博客 366

[毕设项目-大模型微调]现代文翻译文言文【基于LLaMA3.1-8B微调】

教你基于LLaMA3.1-8B微调如何做到现代文翻译文言文

逐梦苍穹的博客 2296

document.write()覆盖原文档的原因详解

1.会覆盖页面的情况<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="www.google.com" /> <title>蚂蚁部落</title> <script type="text/javascript">

澪月 4187

ABAP 后台作业里的消息机制:把 MESSAGE 写对,避免作业莫名取消

SAP后台作业消息处理机制解析 本文深入剖析了SAP系统中后台作业的消息处理机制,揭示了前台与后台执行环境的关键差异。核心发现包括: 后台作业对消息的处理规则: 所有消息写入Job log而不显示 根据消息类型决定是否继续执行 W警告在列表处理阶段会被自动转为E错误 关键异常处理: 通过error_message可捕获E/A类型消息 A类型消息会触发隐式数据库回滚 未被捕获的E/A消息将导致作业中断 实用解决方案: 将业务提示改为S或I类型 使用DISPLAY LIKE保持前台体验 通过error_mess

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 2216

【报错】open /var/lib/docker/tmp/docker-import-863402796/bin/json: no such file or directory

然后,通过docker images可以看到镜像已经加载进来了。然后,通过docker images可以看到镜像已经加载进来了。

静谧、淡雅 6221

java writeobject_java – 序列化 – readObject writeObject覆盖

编写下面的代码后,我现在必须使用自定义的readObject()和writeObject()覆盖StudentData中的方法来读取和写入对象的变量.不使用defaultWriteObject或defaultReadObject方法来执行此操作.我的代码:import java.io.*; //importing input-output filesclass Student implements...

weixin_32287387的博客 345

一文吃透 ABAP CDS SELECT:语法全景、关联与去重、可运行示例与实战心法

摘要: 本文深入解析ABAP中CDS视图的SELECT语法,重点介绍两种等价写法、关联与路径表达式优化、DISTINCT去重逻辑及WHERE/GROUP BY/HAVING/UNION等子句的应用。通过可运行的业务伙伴角色去重、关联路径查询及多角色筛选示例,演示如何将CDS特性转化为项目实践。强调关联复用性优于传统JOIN,并指出DISTINCT的权限边界与误用场景,帮助开发者从行式思维转向图式数据建模。(150字) 关键词: ABAP CDS、SELECT语法、路径表达式、DISTINCT去重、关联复用

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 390

【IO流】字节流,字符流,buffer流,转换流,打印流,合并流

IO流1.字符流1.1 Reader1.2 Writer2.字节流2.1 InputStream2.2 OutputStream3.Buffered流4.转换流5.打印流6.合并流 1.字符流 1.1 Reader 读取流,或者输入流,用于读取文本数据,常用FileReader对象读取文本数据 FileReader常用方法 read(),读取单个字符,读完指针后移,返回值是字符对应ascii码...

weixin_44373412的博客 582

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

菜鸟学习笔记:Java提升篇5(IO流1——IO流的概念、字节流、字符流、缓冲流、转换流)

菜鸟学习笔记:Java OI流1——Collections工具类、其他容器IO流的原理及概念字节流InputStreamOutputStream IO流的原理及概念 在基础篇的讲解中大家已经了解了File对象以及它的一些方法(复习链接)。但是File的主要作用仅仅是建立文件和程序的联系,File对象的方法只能用于文件和目录的创建、文件的查找和文件的删除等功能,但无法对文件的内容做具体的操作。所以引入了现在所要讲的IO流知识点。 在Java程序中,对数据的输入输出操作以“流”的方式进行: 如果大家觉得不好理

qq_41965041的博客 658

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

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

IO流,字符流,字节流,转换流

IO流的分类 输入流 输出流 说明 字节流 InputStream OutputStream 字节流是处理字节的(二进制) 字符流 Reader Writer ...

world_kun的博客 301

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

IO流【字节流、字符流、缓冲流、转换流、序列化流】

1、IO流 IO流就是把数据以流的形式在其它设备和内存中传输,就像水流; 根据流动方向课分为: 输入流 :把数据从其他设备上读取到内存中的流。 输出流 :把数据从内存 中写出到其他设备上的流 2、字节流 所有的文件都是以二进制存储在计算机上的,都是一个字节一个字节的 字节输出流【OutPutStream】 java.io.OutputStream抽象类是表示字节输出流的所有类的超类,将指定的字节信息写出到目的地 public void close() :关闭此输出流并释放与此流相关联的任何系统资源。

weixin_43956936的博客 250

IO流、字节流、字符流、转换流

IO流 一、字节流 字节流:可以读写所有类型的文件 1、InputStream 字节输入 ​ 一、FileInputStream 节点流输入 ​ 1、read()输入|读取 ​ 2、close()关闭流。 注意使用完流需要关闭流,遵守后开先关顺序 2、OutputStream 字节输出 ​ 一、FileOutStream 节点流输出 ​ 1、writec()输出|写入 ​ 2、flush()刷出。...

qq_35653670的博客 173

IO流:字节流、字符流、缓冲流、转换流、数据流、序列化流 --Java学习笔记

在try-catch-finally中无论代码是否报错,它都会在结束之前执行finally里面的语句,除非在其它地方使用System.exit()关闭了jvm,所以使用try-catch-finally方式是肯定会释放资源执行close的。即使每次读取三个字节,依旧无法避免乱码的可能,因为若读取的字符串排列为前面俩个英文接一个中文,就会读取到前面俩个英文的(英文数字在utf-8中占一个字节)字节和中文的其中一个字节。自带8K(8192)的字符缓冲池,可以提高字符输入流读取字符数据的性能。

m0_71386740的博客 2688

【JAVA基础之IO】IO流、字节流、字符流、缓冲流、转换流、序列化、反序列化、打印流、IO异常处理、Commons-IO工具包、Hutool工具包

生活中,你肯定经历过这样的场景。当你编辑一个文本文件,忘记了ctrl+s,可能文件就白白编辑了。当你电脑上插入一个U盘,可以把一个视频,拷贝到你的电脑硬盘里。那么数据都是在哪些设备上的呢?键盘、内存、硬盘、外接设备等等。我们把这种数据的传输,可以看做是一种数据的流动,按照流动的方向,以内存为基准,分为输入input和输出output,即流向内存是输入流,流出内存的输出流。

2301_77358195的博客 2223

黑马程序员——Java基础---IO流(字符流、字节流、转换流、流操作规律)

简述: IO(Input Output) IO流用于处理设备之间的数据传输。(比如硬盘上的文件,内存中驻留的数据)IO流是用于操作数据的,数据的最常见体现形式是:文件。 Java对数据的数据的操作是通过流的方式。Java用于操作流的对象都在IO包中。流按操作数据分为两种:字节流和字符流。流按流向分为:输入流和输出流。 注意:流的操

中仔的博客 2991

IO流(字符流,字节流,缓冲流,转换流)

目录流的分类流的体系结构 流的分类 操作数据单位:字节流,字符流 数据的流向:输入流,输出流 流的角色:节点流,处理流 流的体系结构 抽象基类 InputStream OutputStream Reader

z754916067的博客 231

【Java基础概述-10】IO流、字节流、字符流、缓冲流、转换流、序列化、打印流、Properties属性集对象

输入输出流Input:输入流Output: 输出流。引入:File类只能操作文件对象本身,不能读写文件对象的内容。读写数据内容,应该使用IO流。按流的方向分为:输入流/输出流。(1)输出流:以内存为基准,把内存中的数据写出到磁盘文件或者网络介质中的流称为输出流。(2)输入流:以内存为基准,把磁盘文件中的数据或者网络中的数据读入到内存中去的流称为输入流。输入流的作用:读取数据到内存。

AiryCloud的博客 1407

Java IO流(字节流、字符流、缓冲流、转换流、序列化、打印流)

读取控制台输入 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); c = (char) br.read();//通过read()函数从控制台读取字符输入,通过循环读取多字符 从控制台读取字符串 str = br.readLine();//读取一行输入 文件读写 FileInputSt...

ccccrj博客 742

File类,递归,字符集,IO流(字节流,字符流,缓冲流,转换流,转换流,序列化流,释放资源的方式)

File类,递归,字符集,IO流(字节流,字符流,缓冲流,转换流,转换流,序列化流,释放资源的方式)

Asiyaa的博客 1554

java io流类一览表_JAVA语言-IO流(下)字节流、字符流、转换流、Properties类

IO流(Input Output)ŸIO流用来处理设备之间的数据传输ŸJava对数据的操作是通过流的方式ŸJava用户操作流的对象都在IO包中Ÿ流按操作数据分为两种:字节流和字符流Ÿ流按流向分为:输入流、输出流(相对于内存而言)上图 IO框架中主要的流对象什么时候使用字节流?什么时候使用字符流?首先需要知道的是,任何数据存在硬盘上时,都是以二进制的形式存储的。而通过使用字节流,可以读取任...

weixin_42393829的博客 190
上一篇: File类、字节流
下一篇: IO流总结
Figure_TheKeyboard
博客等级 码龄5年 6粉丝 36原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值