java Io File类 笔记

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);
}



}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

prefectjava

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值