JDK学习--java.io--File

File 类使用总结
1. 文件的建立
在使用 File f = new File("dir");的时候,这个dir若是是完整的路径。例如 F:\\ll。注意:在这一步的时候实际上还未创建文件或目录
若是相对的路径,例如 "ll",那么该文件就会创建在工程的根目录下
若只是想创建文件 则还需要下面完整语句
File f = new File("dir")                        //这步只是建立了一个到dir的文件句柄,实际上还未做任何操作
boolean success = f.createNewFile();

若是想创建目录:

File f = new File("F:\\haha\\ll");
boolean success = f.mkdir(); //该方式创建的要求是它的父目录存在
boolean success2 = f.mkdirs(); //该方式表示父目录不存在,则创建父目录。建议使用这种方式进行目录的创建。


2. 重命名文件
 
File f1 = new File("F:\\haha.txt"); //注意:这个文件必须是存在的,如果不存在,那么使用 f1.createNewFile();
File f2 = new File("new.txt"); //这个f2可以是不存在。如果是相对路径,那么就是存在工程目录下面D:\develop\myUtil
boolean success = f1.renameTo(f2);

3. 文件的移动
 
File file = new File("F:\\new.txt");
File dir = new File("F:\\haha");
boolean success = file.renameTo(new File(dir,file.getName()));
if(success){
System.out.println("create file success");
}

4. 设置文件的最后修改时间

File file = new File("F:\\haha\\new.txt");
long l = file.lastModified();

long current = System.currentTimeMillis();
boolean success = file.setLastModified(current);
if(success){
System.out.println("modify success!");
}


5. 获得过程的目录

String dir = System.getProperty("user.dir");
System.out.println(dir); //这里输出的就是 工程所在的目录 D:\develop\myUtil


6. 目录的删除

//删除文件只能用全路径
public static boolean deleteDir(File file){
if(file.isDirectory()){
String[] dirList = file.list();
if(dirList.length!=0){ //这里不是为NULL值,若无则长度为0
for(int i = 0 ; i < dirList.length ; i++){
boolean success = deleteDir(new File(file,dirList[i]));
if(!success){
return false;
}
}
}
}
return file.delete();
}


7. 获得所有的操作系统的根路径
若是linux系统,则获得是/ ,若是window系统,那么获得的是几个硬盘名字。立体如下所表示:

File[] roots = File.listRoots();
System.out.println(roots.length);
for(File ff : roots){
System.out.println(ff.toString());
process(ff);
}


8. 根据不同的操作系统来定义文件的路径,如在window系统中是用\,在linux、unix系统中是\
 // 那么File.separator就会根据不同的操作系统来进行相应的改动
String path = File.separator+"a"+File.separator+"b";
System.out.println(path);
// 得到的就是 \a\b 我们可以配合File.listRoots()来进行配合使用
String path = File.listRoots()[0]+"a"+File.separator+"b";
System.out.println(path);
//得到的是 c:\a\b

9. File && URL之间的转换

File file = new File(File.listRoots()[3]+"haha");
/* conver file to url*/
URL url = file.toURL(); //file:/F:/haha/
/* conver url to file*/
File f2 = new File(url.getFile());//F:\haha

10. 读取文件时候指定编码方式

BufferedReader br = new BufferedReader(
new InputStreamReader(new FileInputStream("hah.txt"),"UTF8"));
String len = null;
StringBuffer pp = new StringBuffer();
while((len = (br.readLine()))!=null){
pp.append(len);
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值