对io流学习的简单总结
来源:互联网 发布:淘宝店铺头像在哪里换 编辑:程序博客网 时间:2024/05/01 10:28
IO流,即数据流,由序的一串字节序列。在java.io包下。
输入输出的就是字节,这些字节就是程序中的数据。输入流就是将数据从外部传输到程序中的去(如吧硬盘中某个文件中的数据读入到程序中),而输出流就是把数据从程序中传输到外部(如吧数据写进一个硬盘中的一个文档中。)
File的字段
pathSeparator和pathSeparatorChar :win下是‘;’,UNIX下是‘:’。
separator 和separatorChar:win下是 '\',UNIX下是‘/’。
为了实现跨平台的适应性,我们尽量使用File的这些字段分隔路径名和路径。
File构造器
1)File(File parent, String child)
根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例。
2)File(String pathname)
通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。
3)File(String parent, String child)
根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。
4)File(URI uri)
通过将给定的 file: URI 转换为一个抽象路径名来创建一个新的 File 实例。
File重要方法:
createNewFile() ,如果我们这个文件不存在,那么创建一个到本地系统。
exists(),获取此文件是否存在。存在返回true,否则为false。
delete() ,删除此File对象所映射的真实文件。
getAbsolutePath() ,获取此对象的绝对路径。
isDirectory() ,判断该File对象,是不是目录。
isFile(),判断该File对象,是不是文件。
mkdir() ;创建目录,但是如果父目录不存在,就无法创建
mkdirs() ;创建目录,如果没有父目录,就连父目录一起创建
list(),listFile(); 获取出子文件。
字节流。用于读取或写入诸如图像数据之类的原始字节流!使用结束后一定要在finally中关闭掉.close();
1)FileInputStream:
int read(); 从此输入流中读取一个数据字节。
int read(byte[] b);
从此输入流中将最多 b.length 个字节的数据读入一个 byte 数组中。
int read(byte[] b, int off, int len)
从此输入流中将最多 len 个字节的数据读入一个 byte 数组中。
long skip(long n) ;从输入流中跳过并丢弃 n 个字节的数据。
2)FileOutputStream:
构造方法中有一个boolean append参数,默认是false,如果为 true,则将字节写入文件末尾处,而不是写入文件开始处。
write(byte[] b)
将 b.length 个字节从指定 byte 数组写入此文件输出流中。
write(byte[] b, int off, int len)
将指定 byte 数组中从偏移量 off 开始的 len 个字节写入此文件输出流。
write(int b) 将指定字节写入此文件输出流。
是字节流通向字符流的桥梁,
int read() 读取单个字符。
int read(char[] cbuf, int offset, int length)
将字符读入数组中的某一部分。
标记:mark(int)
回到标记:reset()
整行读取
读取:readLine()
写入:newLine()
对象要设置serialVersionUID 如下:
static final long serialVersionUID = 1L ;
临时变量(transient),他在序列化时,将不会被序列化。
在序列化和反序列化过程中需要特殊处理的类必须实现具有下列准确签名的特殊方法:
private void readObject(java.io.ObjectInputStream stream)
throws IOException, ClassNotFoundException;
private void writeObject(java.io.ObjectOutputStream stream)
throws IOException
输入输出的就是字节,这些字节就是程序中的数据。输入流就是将数据从外部传输到程序中的去(如吧硬盘中某个文件中的数据读入到程序中),而输出流就是把数据从程序中传输到外部(如吧数据写进一个硬盘中的一个文档中。)
1.File
指的是文件和目录路径名的抽象表示形式。File的字段
pathSeparator和pathSeparatorChar :win下是‘;’,UNIX下是‘:’。
separator 和separatorChar:win下是 '\',UNIX下是‘/’。
为了实现跨平台的适应性,我们尽量使用File的这些字段分隔路径名和路径。
File构造器
1)File(File parent, String child)
根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例。
2)File(String pathname)
通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。
3)File(String parent, String child)
根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。
4)File(URI uri)
通过将给定的 file: URI 转换为一个抽象路径名来创建一个新的 File 实例。
File重要方法:
createNewFile() ,如果我们这个文件不存在,那么创建一个到本地系统。
exists(),获取此文件是否存在。存在返回true,否则为false。
delete() ,删除此File对象所映射的真实文件。
getAbsolutePath() ,获取此对象的绝对路径。
isDirectory() ,判断该File对象,是不是目录。
isFile(),判断该File对象,是不是文件。
mkdir() ;创建目录,但是如果父目录不存在,就无法创建
mkdirs() ;创建目录,如果没有父目录,就连父目录一起创建
list(),listFile(); 获取出子文件。
2.FileInputStream 和 FileOutputStream
字节流。用于读取或写入诸如图像数据之类的原始字节流!使用结束后一定要在finally中关闭掉.close();
1)FileInputStream:
int read(); 从此输入流中读取一个数据字节。
int read(byte[] b);
从此输入流中将最多 b.length 个字节的数据读入一个 byte 数组中。
int read(byte[] b, int off, int len)
从此输入流中将最多 len 个字节的数据读入一个 byte 数组中。
long skip(long n) ;从输入流中跳过并丢弃 n 个字节的数据。
2)FileOutputStream:
构造方法中有一个boolean append参数,默认是false,如果为 true,则将字节写入文件末尾处,而不是写入文件开始处。
write(byte[] b)
将 b.length 个字节从指定 byte 数组写入此文件输出流中。
write(byte[] b, int off, int len)
将指定 byte 数组中从偏移量 off 开始的 len 个字节写入此文件输出流。
write(int b) 将指定字节写入此文件输出流。
3.Reader 和 Writer 字符流。
4.InputStreamReader AND OutputStreamWriter 转换流
1)InputStreamReader是字节流通向字符流的桥梁,
int read() 读取单个字符。
int read(char[] cbuf, int offset, int length)
将字符读入数组中的某一部分。
5. BufferedReader和BufferedWriter。 缓冲流
缓冲标记标记:mark(int)
回到标记:reset()
整行读取
读取:readLine()
写入:newLine()
6.DataOutputStream和DataInputStream 数据流
每次读取和写入的都是java的基本数据类型,但需要配套使用,而且读取和写入的顺序要一样。
7.ObjectInputStream 和 ObjectOutputStream
将对象放入流中进行读取和写入。但只有支持 java.io.Serializable 或 java.io.Externalizable 接口的对象才能从流读取。对象要设置serialVersionUID 如下:
static final long serialVersionUID = 1L ;
临时变量(transient),他在序列化时,将不会被序列化。
在序列化和反序列化过程中需要特殊处理的类必须实现具有下列准确签名的特殊方法:
private void readObject(java.io.ObjectInputStream stream)
throws IOException, ClassNotFoundException;
private void writeObject(java.io.ObjectOutputStream stream)
throws IOException
0 0
- 对io流学习的简单总结
- 对IO学习的总结
- io流的简单总结
- 简单的IO流总结
- 大神对IO的总结
- IO流学习总结
- IO流学习总结
- IO流学习总结
- IO流学习总结
- IO流学习总结
- IO流学习总结
- IO流学习总结
- IO流学习总结
- IO流学习总结
- IO流学习总结
- IO流学习总结
- io流学习总结
- IO流的学习总结2
- 友盟(一)了解umeng并添加应用和测试设备信息
- 每天一个linux命令(34):du 命令
- Find Minimum in Rotated Sorted Array
- 怎么处理java.net.BindException: Address already in use: JVM_Bind
- iOS页面之间传值的方式(NSUserDefault/Delegate/NSNotification/Block)
- 对io流学习的简单总结
- 007、第七讲 资源管理:声音文件 总结【unity3d如何添加播放音乐】
- 算法笔记之 全排列算法 一 递归求解
- 文件编程(2)底层文件IO操作
- 使用MFC的CFile文件类和CArchive串行化类进行二进制文件读写操作
- ios tableview cell 侧滑删除
- 每天一个linux命令(36):diff 命令
- 开启博客之旅
- 浅谈我对IO流的了解 - 字符流缓冲区