JAVASE之简易IO

File类描述:

File类的描述是,FIle文件和目录路径名的抽象表示形式.java中把文件或者目录(文件夹)都封装成File对象.也就是说如果我们要去操作硬盘上的文件,或者文件夹只要找到File这个类.

文件和目录路径名的抽象表示形式,File类的实例是不可变的.

File类的构造函数:

File(String pathname):将一个字符串路径封装成File对象

File(String parent,String child);传入一个父级路径和子级路径

File(File parent,String child)传入一个File类型的父级路径和子级路径.

 

File类的常用方法:

boolean createNewFile();指定路径不存在该文件时创建文件,返回true,否则返回false

boolean mkdir();当指定的单级文件夹不存在时创建文件夹并返回true,否则返回false.

boolean mkdirs();当指定的多级文件夹某一级文件夹不存在时,创建多级文件夹并返回 true,否则返回false.

boolean delete()删除文件或者删除单级文件夹.

绝对路径:固定不可改变的路径,以盘符开头

相对路径:相对某个参照物,不能以盘符开头.

eclipse中相对路径相对应当前项目的根目录而言

注意:删除一个文件夹,这个文件夹下面不能有其他的文件和文件夹.

File类的判断功能:

boolean exists();判断指定路径的文件或文件夹是否存在

boolean isAbsolute();判断当前路径是否是绝对路径..

boolean isDirectory();判断当前的目录是否存在

boolean isFile();判断当前路径是否是一个文件

boolean isHidden()判断当前路径是否是隐藏文件.

 

File类的获取功能和修改名字功能

File getAbsoluteFile();获取文件的绝对路径,返回File对象

String getAbsolutePath()获取文件的绝对路径,返回路径的字符串.

String getParent()获取当前路径的父级路径,以字符串形式返回该父级路径.

File getParentFile()获取当前路径的父级路径,以字File对象形式返回该父级路径.,

String getName()获取文件或者文件夹的名称

String getPath();获取File对象中封装的路径

Long lastModified();以毫秒值返回最后修改时间

Long length();返回文件的字节数..

boolean renameTo(File dest) 将当前File对象所指向的路径修改为指定File所指向的路 径.

 

File类的其他获取功能

String[] list();以字符串数组的形式返回当前路径下所有的文件和文件夹的名称

File[] listFiles();File对象的形式返回当前路径下所有的文件和文件夹的名称

Static File[] listRoots()获取计算机中所有的盘符

 

循环删除文件的案例:

 

 * 注意:如果要删除一个目录,则需要先删除这个目录下的所有子文件和子目录

 *

 */

public class RecurrenceTest2 {

public static void main(String[] args) {

File f = new File("d:\\a");

method(f);

}

//删除指定目录下所有文件和目录

public static void method(File file) {

if(file.isDirectory()) {

//干掉自己所有的子文件和子目录

//获取所有的子文件和子目录

File[] files = file.listFiles();

for (File f : files) {

if(f.isFile()) {

//直接干掉他

System.out.println(f.getName());

f.delete();

}

else if(f.isDirectory()) {

//继续查看是否还有文件和子目录

method(f);

}

}

//干掉自己

System.out.println(file.getName());

file.delete();

}

}

}

 

字符流和字节流

IO流分类

流向:

输入流: 读取数据  FileReader Reader

输出流: 写出数据  FileWriter  Writer

  数据类型:

字节流:

字节输入流   读取数据  inputstream

字节输出流   写出数据  outputstream

字符流

字符输入流  读取数据  Reader

字符输出流  写出数据  Writer

利用字符流拷贝文档,(非图片,音频,视频)

字节流可以操作所有类型的文件,因为所有的文件在计算机中都是以字节形式存储

而字符流只能用来操作纯文本类型的文件,不能操作字节类型的文件.

字节流也可以复制图片和文字.但是字符流只能复制文字

 

二进制文件只能使用字节流进行复制(使用window自带记事本打开读不懂的)

文本文件的复制既可以使用字符流,也可以使用字节流.

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值