Java基础12一IO流
1.IO流的原理
利用数据通道实现程序和数据源之间数据的的读写操作。
2.IO流分类
输入流、输出流、字节流、字符流、节点流、过滤流
3.InputStream 字节输入流
实现类FileInputStream
使用FileInputStream的步骤:
step1:创建一个FileInputStream对象并且指定要操作的数据源
step2:调用read方法读取数据
step3:循环读取
step4:输出内容
step5:关闭IO流对象在finally中
字节的输入输出流适合对二进制文件,对视频文件、音频文件、图片进行读写操作不适合。
操作文本文件
1.转换流
InputStreamReader 可以把读取的字节解码成字符,实际上InputStreamReader是对InputStream类的封装。
使用方法:
step1:创建一个指定InputStream参数的InputStreamReader对象
step2:调用read读取字节
step3:循环读
step4:关闭IO流对象
注意:使用缓冲流时,只要关闭缓冲流对象即可。
OuptputStreamWiter将字符解码成字节。
2.对象流
用ObjectOutputStream类保存基本数据类型或对象的机制叫序列化
用ObjectInputStream类读取基本数据类型或对象的机制叫反序列化
能被序列化的对象所对应的类必须实现java.io.Serializable这个标识性接口
序列化的作用:就是为了能够让数据以二进制的形式在网络里进行传输。
在类中被static关键字和transient关键字修饰的变量不能被序列化,也就是说不会保存数据。
Java基础12一IO流的更多相关文章
- Java基础教程:IO流与文件基础
Java:IO流与文件基础 说明: 本章内容将会持续更新,大家可以关注一下并给我提供建议,谢谢啦. 走进流 什么是流 流:从源到目的地的字节的有序序列. 在Java中,可以从其中读取一个字节序列的对象 ...
- Java基础系列8——IO流超详细总结
该系列博文会告诉你如何从入门到进阶,一步步地学习Java基础知识,并上手进行实战,接着了解每个Java知识点背后的实现原理,更完整地了解整个Java技术体系,形成自己的知识框架. 在初学Java时,I ...
- Java基础之详谈IO流
Java基础知识.IO流详细讲解.你所要的IO这里都有
- java基础11(IO流)-字符流
转换流 由于字节流操作中文不是特别方便,所以java中提供了转换流 编码表:由现实世界的字符和对应的数值组成的一张表 编码:把看得懂的变成看不懂的(String-------byte[]) 解码:把看 ...
- java基础10(IO流)-字节流
IO流 输入与输出[参照物是程序] 如果从键盘.文件.网络甚至是另一个进程(程序或系统)将数据读入到程序或系统中,称为输入 如果是将程序或系统中的数据写到屏幕.硬件上的文件.网络上的另一端或者是一个进 ...
- Java基础之(IO流)
简介: 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输特性将流抽象为各种类,方便更直观的进行数据操作. 一.File ...
- 【java基础学习】IO流
IO流 字节流InputStream和OutputStream 字符流Writer和Reader 装饰模式
- java基础9(IO流)-File类
File类 File:文件和目录路径名的抽象表示形式.即java中把文件或者目录都封装成File对象 代码练习1 import java.io.File; public class FileDemo1 ...
- 【Java基础总结】IO流
字节流 1. InputStream 字节输入流 代码演示 InputStream in = System.in; System.out.println("int read(byte b) ...
随机推荐
- SqlServer转换为Mysql(mss2sql)
SqlServer转换为Mysql(mss2sql)工具 http://pan.baidu.com/s/1c2d8R8O 参考链接: http://www.cnblogs.com/angestudy/ ...
- 【Codeforces 349B】Color the Fence
[链接] 我是链接,点我呀:) [题意] 让你组成一个只由1~9组成的数字 每个数字需要的paint数字给定. 让你组成一个最大的数字,且所有数字的paint的总和不超过v. [题解] 先求出a中的最 ...
- js两个整数之间求和
const GetSum = (a, b) => { let min = Math.min(a, b), max = Math.max(a, b); return (max - min + 1) ...
- 算是学完了《Servlet&JSP学习笔记》,立此存照
我感觉从构架上来说,算是入门了, 终于可以正式进入SPRING的学习啦...爽 代码就不弄了,真的太多了...花了差不多两周呢..
- 记一次ruby的安装
1,下载rubyinstall 安装包及devkit包 登陆网站 :http://rubyinstaller.org/downloads/ 安装rubyinstall包时添加到环境变量 2,安装完in ...
- sql server使用杂记(二)
存储过程CREATE PROCEDURE [dbo].[getprofitandloss]@agentNo varchar(10),@o0 varchar(30),@source varchar(30 ...
- JAVA 大数据
- 【实时文件同步】rsync+inotify-tools的安装与配置
http://blog.csdn.net/yakson/article/details/52044403
- 开源GIS软件 1
1. 在线地图浏览器 GMap.NET GMap.NET 是一个强大.免费.跨平台.开源的.NET控件,它在Windows Forms 和WPF环境中能够通过Google, Yahoo!, Bing, ...
- HDU2899 Strange fuction 【二分】
Strange fuction Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) ...