Obtener información de archivo
Además de las operaciones de archivo, también puede utilizar la clase File para obtener información proporcionada por el archivo en sí. Puede obtener lo siguiente:
- Si el archivo es legible: public boolean canRead ();
- Si el archivo se puede escribir: public boolean canWrite ();
- Obtenga la longitud del archivo: public long length (); Este método devuelve datos de tipo largo.
- Fecha y hora de la última modificación: public long lastModified ();
- Determine si es un directorio: public boolean isDirectory ();
- Determine si es un archivo: public boolean isFile ();
- Enumere el contenido del directorio: public File [] listFiles ();
ejemplo:
Método principal:
public static void main(String[] args) throws IOException {
File file = new File("E:"+File.separator+"183441"); //File.separator表示分隔符
System.out.println("文件是否可读"+file.canRead());
System.out.println("文件是否可写"+file.canWrite());
System.out.println("文件的大小"+MathUtil.round(file.length()/(double)1024/1024,2)+"M");
System.out.println("文件最后的修改时间"+new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(file.lastModified()));
System.out.println("是否是目录"+file.isDirectory());
System.out.println("是否是文件"+file.isFile());
System.out.println("目录下还有哪些内容?");
if(file.isDirectory()) { //当前是一个目录
File[] fileData = file.listFiles(); //列出目录中的全部内容
for(File file1 : fileData){
System.out.println(file1);
}
}
}
Categoría de redondeo:
class MathUtil{
private MathUtil(){}
public static double round(double num,int scale){
return Math.round(Math.pow(10,scale) * num) / Math.pow(10,scale);
}
}