import java.io.File;
import java.io.IOException;
import java.util.Date;
import org.junit.Test;
/**
*
* IO流
*
* 程序运行在jVM虚拟机中 ,虚拟机存在 电脑内存中,电脑断电 内存东西清空,
*
* java程序有时需要从 电脑磁盘读写 文件 需要用到 IO 输入输出流 。
*
* File 类 。 ----------------------操作 文件 或者文件目录(文件夹) 属性信息 , 不能对 文件进行 读写 !!!
*
* 所有跟文件操作的 类都存在于 java.io包下。
*
* File 有构造器 , 可以用构造器创建其对象
*
* File 类 只能操作 文件一般的属性, 如:创建、删除 、重命名 等等 !!!
* 如果 要对文件进行读写 操作 需要用到 io输入输出流
* File类的对象 常常 作为 io流 具体类 的构造器 的形参。
*
* File类 可以操作 文件, 也可以操作 文件路径。
*
* File 类操作 操作文件 或者 文件路径 时 有
* 相对 路径 :当前文件目录下的文件的路径。
* 绝对路径之分:包括盘符在内的完整的文件路径。
*
*
*
* file.getName() ---获得 文件 或者 文件路径的 名
* file.getPath() ---获取 文件 或者 文件路径的 路径
* file.getAbsolutePath() 获取 绝对路径
* file.getAbsoluteFile() 获取 绝对文件路径
* file.isFile() ---判断是否是 一个文件 而不是文件路径
*
* file1.isDirectory()判断是否是 一个文件路径 而不是文件
*
* file.exists() 判断文件 或者文件路径 存在 。
* file.canRead() 判断文件 或者文件路径 可读。
* file.canWrite() 判断文件 或者文件路径 可写。
*
* 更改文件--- 必须 file 存在 file2 不存在 才能更改成功。
boolean b = file.renameTo(file2);
*
*
file.lastModified(); //文件或者 文件目录 的最后修改时间 返回 long类型的
file.length();//文件或者 文件目录的大小 返回 long类型的
* *************************************************************************
file.createNewFile();//文件不存在 创建文件
* file.mkdir();//文件目录不存在 创建文件目录 ,只能创建当前目录下的一级文件目录
file.mkdirs();//文件目录不存在 创建文件目录 可以创建多级文件目录
file.delete();//文件或者文件目录的删除
文件夹下有文件时 删除不掉文件夹,必须先删除文件再删文件夹。
* 文件目录 遍历 :
* file1.list() 获取当前文件目录下的所有文件和文件目录 的 名字 字符串数组。
file1.listFiles(); 获取文件或者 文件目录的 File数组
*
* File文件的联系
*
* @author Administrator
*
*/
public class TestIoFile {
@Test
public void test2() throws IOException{
// 相对路径 文件路径
File file =new File("D:\\io\\rename\\123.txt");
File file2 =new File("D:\\io\\rename1\\");
// 绝对路径 文件目录路径 --文件夹
File file1 =new File("D:\\io");
if(!file.exists()){
file.mkdirs();
file.createNewFile();
}
// 删除文件
boolean b = file.delete();
System.out.println(b);
// 删除文件目录
boolean b2= file2.delete();
System.out.println(b2);
}
@Test
public void test1() throws IOException{
// 相对路径 文件路径
File file =new File("D:\\io\\rename");
// 绝对路径 文件目录路径
File file1 =new File("D:\\io");
if(!file.exists()){
// 文件不存在 创建文件
// file.createNewFile();
// 文件目录 不存在 创建文件目录
// file.mkdir();//只能创建当前目录下的一级文件目录
// file.mkdirs();//可以创建多级文件目录
}
// 获取文件的最后修改时间
long modlong = file.lastModified();
System.out.println(new Date(modlong));
// 文件的大小
long filelong= file.length();
System.out.println(filelong);
// file1.list() 获取当前文件目录下的所有文件
String[] st = file1.list();
for(String s:st){
System.out.println(s);
}
System.out.println();
// 获取文件或者 文件目录的 数组
File[] fs = file1.listFiles();
for(File f : fs){
System.out.println(f.getName());
}
}
@Test
public void test(){
// 相对路径 文件路径
File file =new File("1.txt");
// 绝对路径 文件目录路径
File file1 =new File("D:\\io");
System.out.println(file.getName());
System.out.println(file.getPath());
System.out.println(file.getAbsolutePath());
System.out.println(file.getAbsoluteFile());
System.out.println(file.canRead());
System.out.println(file.canWrite());
System.out.println(file.isFile());
System.out.println(file.exists());
System.out.println();
System.out.println(file1.getName());
System.out.println(file1.getPath());
System.out.println(file1.getAbsolutePath());
System.out.println(file1.getAbsoluteFile());
System.out.println(file1.canRead());
System.out.println(file1.canWrite());
System.out.println(file1.isFile());
System.out.println(file1.exists());
System.out.println(file1.isDirectory());
File file2 =new File("D:\\io\\x.txt");
// 更改文件--- 必须 file 存在 file2 不存在 才能更改成功。
boolean b = file.renameTo(file2);
System.out.println(b);
}
}
java Io File类 笔记
最新推荐文章于 2024-08-12 22:20:16 发布