java学习_javaIo
来源:互联网 发布:linux永久设置密码 编辑:程序博客网 时间:2024/06/05 14:44
java_IO相关
File用于表示文件系统中的一个文件或目录。
通过File可以:1.访问该文件或目录的属性信息。(名字,大小,修改时间)
2.操作文件或目录,创建,删除。
3.访问一个目录的子项目。
但是不能读取文件数据。
File file = new File("路径");
file.exists() //文件是否存在
file.createNewFile();//创建文件
file.delete(); //删除文件
删除目录时要求该目录必须是一个空目录
file.isDirectory(); //判断是否为目录
file.isFile(); //是否为文件
file.listFiles(); //获取file中的子项
file.listFiles(FileFilter filter);//获取过滤后的子项
file.mkdir(); //创建目录
//创建多级目录
File dirs = new File("a"+File.separator+
"b"+File.separator+
"b"+File.separator)
文件的读取与写入。mode表示权限。r:只读。rw:读写模式。
RandomAccessFile raf = new RandomAccessFile(File file,String mode);//
int byte = raf.read();//读取一个字节,并以int形式返回。若返回值为-1,则表示读取到文件末尾。
int a = raf.readInt();//读取一个int值
byte[] bs = new byte[100];
int len = raf.read(bs); //读取字符串。读取一组字节。返回读取到的字节数
raf.write(int a);//向文件中写入一个字节,写的是给定的int的值对应的2进制的低八位
raf.write(byte[] bs);//向文件中写入一组字节
raf.writeInt(int i);//向文件中写入一个int值
raf.seek(0);//移动指针。
文件输入流,用于从文件中读取数据的流。默认是覆盖模式.
FileInputStream fin = new FileInputStream("fos.txt");//
int len = in.read(byte[] bs);//读取一组字节
FileOutputStaeam fos = new FileOutputStream("fos.txt");
fos.write(byte[] bs);//写入一组字节
缓冲输出流,是一对高级流,功能是加快读写效率。
BufferedOutputStream
BufferedInputStream
bos.close();//关闭流时,调用flush()方法,清空缓冲区
对象流,是一对高级流,读写java中的对象(对象与字节的转换工作)
ObjectOutputStream
objectInputStream
对象输出流将对象写出时转换为一组字节的过程为:对象序列化。
一个类的实现希望被对象流读写,那么要求该类必须实现Serializable接口
java根据流读写数据的单位划分为:字节流,字符流。
字节流以字节为单位读写数据。
字符流以字符(unicode)为单位读写数据,但是底层本质上还是读写字节,
只是字节与字符的转换工作由字符流完成。
Writer和Reader是所有字符流的父类,他们是一对抽象类,规定了所有字符流
都要具备的读写字符方法。
OutputStreamWriter osw = new OutputStreamWriter(fos,"utf-8")
InputStreamReader isr = new InputStreamRead(fis,"utf-8")
缓冲字符流
缓冲字符流内置缓冲区,可以提高读写效率,并且缓冲字符流的特点是可以按行读写字符串
BufferedWriter
BufferedReader
PrinterWriter是常用的缓冲字符流,并且还提供了行刷新功能。
由于创建PrinteWriter时内部总是嵌套BufferedWriter实现。
BufferedReader提供方法:
readLine()连续读取若干字符,直到读取了换行符为止,
将之前的所有字符以一个字符串形式返回。返回的字符串不包含最后的换行符。
若返回值为null,则表示末尾。
阅读全文
0 0
- java学习_javaIo
- 黑马程序员_JavaIO学习笔记
- 黑马学习笔记_javaIO(二)
- 黑马学习笔记_javaIO(一)
- 黑马程序员_JavaIO操作
- 黑马程序员_javaIO流
- 黑马程序员_javaIO编程
- 黑马程序员_javaIO流
- 黑马程序员_javaIO流下
- 黑马程序员_javaIO流_1
- 黑马程序员_javaIO流_2
- 黑马程序员_javaIO流笔记
- 黑马程序员_javaIO流上
- 黑马程序员_JavaIO输入与输出上
- 黑马程序员_JavaIO输入与输出下
- 黑马程序员_javaIO流(一)
- 黑马程序员_javaIO流(二)
- 黑马程序员_javaIO编程和字符集
- pandas中Groupby的使用(三)-根据dtype对列进行分组
- Bagging与随机森林算法原理小结(详解)
- Retrofit
- D3系列第一弹——绘制饼图
- CentOS 系统简易搭建FTP服务(四步足矣)
- java学习_javaIo
- 数据结构编程笔记二十:第七章 图 最小生成树算法的实现
- Android studio使用.9图片报错
- Python中flatten用法
- tensorflow练习8:实现Google的Deep Dream
- Win32事件消息处理函数
- spring data jpa 实体类中字段不与数据库表映射
- spring事务特性
- redhat Linux6下搭建DHCP服务器