java文件操作

1,645 阅读2分钟

注意:

  1. 路径不区分大小写

  2. 路径中的文件名称分隔符 window 使用反斜杠(\)也支持斜杠(/),反斜杠是转义字符,两个反斜杠代表一个普通的反斜杠

  3. 其他的平台都使用斜杠作为分隔符(/),网络地址也是(www.baidu.com)。

  4. window 的路径分隔符使用“\”,而Java程序中的“\”表示转义字符,所以在Windows中表示路径,需要用“\”。或者直接使用“/”也可以,Java程序支持将“/”当成平台无关的路径分隔符。或者直接使用File.separator常量值表示。

  5. 路径中如果出现 “…” 表示上一级目录,路径名如果以“/”开头,表示从“根目录”下开始导航。

构造方法

    public File(String pathname) :通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。
    public File(String parent, String child) :从父路径名字符串和子路径名字符串创建新的 File实例。
    public File(URI uri):通过将给定的 file: URI 转换为一个抽象路径名来创建一个新的 File 实例。

File 类中提供了四个类常量:

public static final char separatorChar: 与系统有关的默认名称分隔符。此字段被初始化为包含系统属性 file.separator 值的第一个字符。                         在 UNIX 系统上,此字段的值为 ‘/’;在 Microsoft Windows 系统上,它为 ‘\’。

public static final String separator: 与系统有关的默认名称分隔符,为了方便,它被表示为一个字符串。此字符串只包含一个字符,即 separatorChar。

public static final char pathSeparatorChar: 与系统有关的路径分隔符。此字段被初始为包含系统属性 path.separator 值的第一个字符。                           此字符用于分隔以路径列表 形式给定的文件序列中的文件名。在 UNIX 系统上,此字段为 ‘:’;在 Microsoft Windows 系统上,它为 ‘;’。

public static final String pathSeparator: 与系统有关的路径分隔符,为了方便,它被表示为一个字符串。此字符串只包含一个字符,即 pathSeparatorChar。


String pathSeparator = File.pathSeparator;
//System.out.println(pathSeparator);//路径分隔符 windows:分号;  linux:冒号:

String separator = File.separator;
//System.out.println(separator);// 文件名称分隔符 windows:反斜杠\  linux:正斜杠/

System.out.println(File.separator);          //  \
System.out.println(File.separatorChar);      //  \
System.out.println(File.pathSeparator);      //  ;
System.out.println(File.pathSeparatorChar);  //  ;

java中File的delete()方法删除文件失败的原因和解决方案

通常来说:java file.delete()方法删除文件失败的原因有以下几个: 1、极有可能是文件的流没有关闭(我遇到的就是没有关闭文件的输入流); 2、被别的进程引用,可以手工删除试试(如果删除不了就证明被别的进程正在引用); 3、file是文件夹,而且不为空,file文件夹里还有别的文件夹或者是文件。