package com.day20.wd; import java.io.File; import java.io.IOException; public class IODemo { /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { // TODO Auto-generated method stub } private static void method_04() { File f=new File("abc\test.java"); sop(f.getAbsolutePath()); sop(f.getParent());//该方法返回的是绝对路径中的父目录。如果获取的是相对路径,返回null。 //如果相对路径中有上一层目录该目录就是返回结果 sop(f.getAbsoluteFile()); File f2=new File("c:\test.java"); sop("rename" f.renameTo(f2)); } private static void method_03() { File f= new File("G:\sdd\sssf\ssf"); sop("isabsolute" f.isAbsolute()); sop(f.getAbsolutePath()); sop(f.mkdir()); sop(f.exists()); } private static void method_02() throws IOException { File f=new File("a.txt"); f.deleteOnExit();//程序退出删除文件 if(f.exists()) //判断文件是否存在 f.delete();//删除 sop(f.getAbsoluteFile());//绝对路径 sop(f.createNewFile());//创建文件,返回boolean值,如true,创建,如果已存在,那么返回false sop(f.createNewFile()); } public static void method__01(){ //将a.txt封装成File对象,可以将已有的和未出现的文件或者文件夹封装成对象 File f=new File("a.txt"); sop(f.getAbsoluteFile()); File f1=new File("d:\abc","a.txt"); sop(f1.getAbsoluteFile()); File f2=new File("d:\abc"); File f3=new File(f2,"a.txt"); sop(f3); //separator目录分割符,可以实现跨平台 } public static void sop(Object e){ System.out.println(e); } } 相关文件操作 在java中File类是唯一可以直接操作文件的类: 一、创建文件
代码如下 | 复制代码 | FileDemo01.java: import java.io.File; import java.io.IOException; public class FileDemo01 { public static void main(String args[]) { File f = new File("e:" File.separator "abc.txt");//声明File类的对象 try { f.createNewFile();//根据给定的路径创建文件 } catch (IOException e)//进行异常的捕获打印输出 { e.printStackTrace(); } } } 2.删除文件:
代码如下 | 复制代码 | FileDemo02.java import java.io.File; public class FileDemo02 { public static void main(String args[]) { File f = new File("e:" File.separator "abc.txt"); f.delete();//删除文件 } } 3.如果文件存在则删除,如果不存在则创建
代码如下 | 复制代码 | FileDemo03.java: import java.io.File; import java.io.IOException; public class FileDemo03 { public static void main(String args[]) { File f = new File("e:" File.separator "abc.txt"); /* 如果文件存在则删除文件,如果不存在则创建文件 */ if(f.exists()) { f.delete();//删除文件 } else { try { f.createNewFile();//创建文件 } catch (IOException e) { e.printStackTrace(); } } } } 4.创建文件夹
代码如下 | 复制代码 | FileDemo04.java: import java.io.File; public class FileDemo04 { public static void main(String args[]) { File f = new File("e:" File.separator "nwpu"); f.mkdir(); } } 5.列出文件(列出的只是文件名)
代码如下 | 复制代码 | FileDemo05.java: import java.io.File; public class FileDemo05 { public static void main(String args[]) { File f = new File("e:" File.separator);//实例化File类的对象 String str [] = f.list();//列出文件,返回一个str数组 for (int i=0;i { System.out.println(str[i]); } } } 6.列出文件(listFiles()方法可以列出文件的路径)
代码如下 | 复制代码 | FileDemo06.java: import java.io.File; public class FileDemo06 { public static void main(String args[]) { File f = new File("e:" File.separator);//实例化File类的对象 File files[] = f.listFiles();//列出文件 for (int i=0;i { System.out.println(files[i]);//调用toString 方法打印输出看看输出信息 } } } 7.判断是否为目录:(isDirectory()方法)
代码如下 | 复制代码 | FileDemo07.java: import java.io.File; public class FileDemo07 { public static void main(String args[]) { File f = new File("e:" File.separator);//实例化File类的对象 if(f.isDirectory()) { System.out.println(f.getPath() "是目录!"); } else { System.out.println(f.getPath() "不是目录!"); } } } 8.列出给定目录中的所以内容(如果有子目录则列出子目录中的所以内容)
代码如下 | 复制代码 | FileDemo08.java: import java.io.File; public class FileDemo08 { public static void main(String args[]) { File f = new File("e:" File.separator);//实例化File类的对象 printFile(f); } public static void printFile(File f) { if(f!=null)//判断文件是否为空 { if(f.isDirectory())//判断文件是否为文件夹 { File files[] = f.listFiles();//列出文件 if(files!=null) {//判断此目录能否列出 for(int i=0;i { printFile(files[i]);//递归调用判断是否为子文件夹 } } } else { System.out.println(f); } } } } |
|
|
|
|
|
|
|
|