IO流

Posted 款款就是我

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IO流相关的知识,希望对你有一定的参考价值。

 

一.file

File类是io包中唯一表示磁盘文件和磁盘目录的对象的路径

该类包含了创建、删除文件、重命名文件、判断文件是否存在,查询等功能

注意:只能设置和获取文件本身的信息,不能设置和获取文件的具体内容

C:\\\\JAVAprogram\\\\Java\\\\jdk1.8.0_111

 

获取File路径

 

操作file路径和名称

  File getAbsoluteFile()  :获取绝对路径

  String getAbsolutePath() :获取绝对路径

  String getPath() :获取文件路径

  String getName :获取文件名称

  File getParentFile() :获取上级目录文件

  String getparent() 获取上级目录路径

 

 

 

检测File状态的方法

boolean canExcute() 是否可执行文件

boolean canRead() 是否可读

boolean canWrite() 是否可写

boolean isHidden() 是否隐藏

long lastModified() 判断文件最后修改时间

long length() 文件长度大小(字节)

 

 

 

File类中方法-文件操作

Boolean isFile() 是否是文件

Boolean  createNewFile() 创建新的文件

Boolean delete() 删除文件

Void deleteOnExit() 在jvm停止时删除文件

Boolean exists()  判断文件是否存在

Boolean renameTo(File dest) 重新修改名字

 

File类中方法-目录操作

 Boolean isDirectory()  判断是否是目录

 Boolean mkdir() 创建当前目录

 Boolean mkdirs() 创建当前目录和上级目录

 String[] list() 列出所有的文件名

File[] listFiles() 列出所有文件对象

Static File[] listRoots() 列出系统盘符

二.IO操作

什么是IO(input/output):输入和输出

IO设备:和电脑通信的设备

输入设备:麦克风、键盘、鼠标

输出设备:打印机、显示器、投影仪

 

为什么程序需要IO

案例1.打游戏操作,得分较高,存储游戏的信息

此时需要把游戏中的数据存储起来,只能存储在文件中。

案例2.打游戏操作,查看英雄榜,数据存储在文件中,需要去访问文件内容

案例3.上传和下载

 

IO操作是个相对的过程:

程序需要数据:把数据流入到程序中>>>输入

程序保存数据:把数据输出到文件中>>>输出

 

 

 

IO流的分类

站在不同的角度,分类的方式是不一样的:

1.根据流向划分:输入流 输出流

2.根据数据的单位划分:字节流 字符流

3.根据功能不同的划分:节点流  包装流

四大基流:字节输入流   字节输出流  字符输入流  字符输出流

 

四大基流都是抽象类,其他流都是继承于这四大流

我们不能创建四大基流的对象,只能创建其子类对象。无论是什么流,都有close()方法,用来关闭资 源。

如果操作文件,就得开通一个流对象关联我们的磁盘文件,如果不关闭资源,磁盘的文件一直被程序引用着,不能删除也不能修改。

 

操作IO流的步骤/模板:

1.创建源或者目标对象(水井)。

文件流  输入操作:文件中的数据流向程序,此时文件是源,程序是目标

  输出操作:把程序中的数据流向文件中,文件是目标,程序是源

2.创建IO流对象(水管)

输入操作:创建输入流对象

输出操作:创建输出流对象

3.具体的IO操作

输入操作:输入流对象的 read 方法

输出操作:输出流对象的write方法

4.关闭资源/释放资源

输入操作:输入流对象的close()方法

输出操作:输出流对象的close()方法

IO操作:读进来,写出去

读进来:强调的是输入,说明是用read方法

写出去:强调的是输出,说明是用write方法

 

文件流:程序和文件打交道

此时谈论的文件是纯文本文件(txt记事本)

FileInputStream  文件的字节输入流

FileOutputStream 文件的字节输出流

FileReader  文件的字符输入流

FileWriter  文件的字符输出流

以上是关于IO流的主要内容,如果未能解决你的问题,请参考以下文章

IO流之IO流综述

IO异常--缓冲流--转换流--序列化流( IO流2 )

IO流(序列流)

java中的io流都有哪些

java IO流 IO流概述

IO流