本文主要是介绍java32:I/O,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Java 对操作系统中文件系统的支持
File 类
用于描述操作系统中的一个文件或者目录
通过File 我们可以得知文件的名字,大小,修改时间等信息,但是不能读取文件的内容
package day32;import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;public class FileDemo {public static void main(String[] args){File file = new File("."+File.separator+"File.txt");//File file = new File(".");// 目录分割符 保证最好的兼容性if(file.exists()){//file.exists() 文件是否存在 booleanSystem.out.println("Existing file");if(file.isFile()){//是不是文件System.out.println("Is File");}if(file.isDirectory()){//是不是目录System.out.println("Is Dir");}System.out.println("名字:"+file.getName());//获取File 描述的文件或者目录的名字System.out.println(file.getName()+":"+file.length()+"字节");//获取File的字节量long last = file.lastModified();//获取文件最后一次修改的日期的毫秒值Date date = new Date(last);SimpleDateFormat format = new SimpleDateFormat("yyyy年MM月dd日 - HH:mm:ss");System.out.println(format.format(date));System.out.println(file.getPath());//相对路径System.out.println(file.getAbsolutePath());//绝对路径,有点问题try {System.out.println(file.getCanonicalPath());//系统标准的绝对路径,但是这个方法要求我们捕获异常} catch (Exception e) {}System.out.println("可读"+file.canRead());//判断是否可读 booleanSystem.out.println("可写"+file.canWrite());//判断是否可写 boolean}else{System.out.println("No Existing file");}}
}
package day32;import java.io.File;public class FileDemo02 {public static void main(String[] args){File dir = new File("."+File.separator+"Img");if(!dir.exists()){dir.mkdir();//创建了一个目录}else{System.out.println("目录已存在");}//File sub = new File("."+File.separator+"Img"+File.separator+"sub");File sub = new File(dir,"Sub");//重载if(!sub.exists()){sub.mkdir();}else{System.out.println("目录已存在");}}
}
package day32;import java.io.File;public class FileDemo03 {public static void main(String[] args){File file = new File("."+File.separator+"a"+File.separator+"b"+File.separator+"c"+File.separator+"d"+File.separator+"e" );System.out.println(file.getPath());if(!file.exists()){file.mkdirs();//创建多级目录}}
}
package day32;import java.io.File;
import java.io.IOException;public class FileDemo04 {//创建文件public static void main(String[] args){File file = new File("Readme.txt");// .\可以省略不写 默认就是在当前目录的if(!file.exists()){try{file.createNewFile();//不支持创建目录的同时创建文件}catch(IOException e){}}}
}
package day32;import java.io.File;/*** * 删除文件或者目录*/
public class FileDemo05 {public static void main(String[] args) {File file = new File("Readme.txt");if(file.exists()){file.delete(); }else{System.out.println("没有 这个 文件");}File file1 = new File("Img");if(file1.exists()){file1.delete();//删掉目录的时候目录中必须是空的}else{System.out.println("没有这个目录");}}
}
package day32;import java.io.File;
import java.util.Arrays;
/*** *获取当前目录下所有子项的名字*/
public class FileDemo06 {public static void main(String[] args){File file = new File(".");if(file.isDirectory()){String[] filename = file.list();System.out.println(Arrays.toString(filename));}File[] subs = file.listFiles();//获取所有的子项for(File f:subs){System.out.println(f.getName()+"-"+f.length());}}
}
这篇关于java32:I/O的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!