与IO相关的对象和File对象

1. 异常处理对象

怎么将异常信息存到文件里面????


与IO相关的对象和File对象_第1张图片
  • 这样处理日志信息很麻烦,网上 有相关的工具:log4j


2, 系统信息:

  • Properties集合:System.getProperties();返回系统信息;格式很乱!需要遍历集合。
  • 可以用list()方法;prop.list();
  • 如果要将系统信息存到文件中怎么办?
  • 解决:prop.list(new PritStream("sysInfo.txt"))


3,file类

  • 文件是一种复杂的事物,需要对文件进行描述!这就是file类存在的原因。
  • 方便对文件和文件夹的属性信息,弥补了流的不足。
  • 文件或者目录的抽象表示形式。
  • 打印file类型对象就是文件的路径,你传递的是绝对路径就打印绝对路径;相对就相对。
  • File.spearator:跨平台的一个分隔符;要是Linux下“/"就是文件分隔符,要是在Windows下“\”就是文件分隔符。
  • 常见方法:

创建

  • 创建文件,会调用底层资源,会返回异常。
  • boolean createNewFile();在指定位置创建文件,如果该文件存在,就不创建,返回false;这与流文件的覆盖不相同。
  • 创建临时文件。

删除

  • boolean delete();
  • boolean deleteOnExit();在终端退出时删除文件;有时候程序在运行是出现异常不会执行完,文件没有被删除就会变成来及文件,这是就需要用这个在虚拟机退出时删除文件。
  • isFile();
  • isDirectory();
  • isHidden();是否是隐藏文件;但Java不能访问许多系统的隐藏文件。
  • isAbsolute();是否是绝对

判断

  • canExecute(); 判断文件是否能执行。
  • 设想:只要文件可执行就挂上RunTime对象,让所有可执行的文件都执行,那不是很恐怖!!

获取信息

  • getName(); 获取名称
  • getParent(); 获取父目录;该方法返回的是绝对路径中的父目录,如果不是绝对路径就会返回null。如果相对路径中有上一层目录就返回上一层目录。
  • getPath();获取文件路径,你封装的是什么就是什么路径
  • getAbsoluteFile();放回被封装成file类型对象的绝对路径。
  • getAbsolutePath();返回绝对路径
  • lastModified();返回上一次文件被修改的时间。
  • length();返回文件的长度。

创建目录

  • file类对象调用mkdir()方法就可以创建目录;但这个方法只能创建一级目录,
  • boolean mkdirs();创建多级文件目录。
  • boolean isDirectoy();判断是否是目录。
  • boolean isFile();判断是否是文件。

* 恐怖之处:实际开发中会遇到被判断的对象可能会出现,既不是文件,也不是目录。原因:因为这是文件根本就不存在!!!所以在判断是文件还是目录时,要先用exit()方法判断被封装的文件对象是否存在。

你可能感兴趣的:(与IO相关的对象和File对象)