java32:I/O
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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() 文件是否存在 boolean System.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());//判断是否可读 boolean System.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的主要内容,如果未能解决你的问题,请参考以下文章