Archivar puntos de conocimiento básicos

Expediente

java.io.File

Representación abstracta de nombres de rutas de archivos y directorios.

  • Java encapsula los archivos y carpetas (directorios) en la computadora en una clase File. Podemos usar la clase File para manipular archivos y carpetas.
    Podemos usar los métodos de la clase File
  • Crea un archivo / carpeta
  • Obtener archivos / carpetas
  • Eliminar archivos / carpetas
  • Determine si el archivo / carpeta existe
  • Atravesar la carpeta
  • Obtenga el tamaño del archivo. La
    clase File es una clase que no tiene nada que ver con el sistema. Cualquier sistema operativo puede usar este método.
    Clave: Recuerde estas tres palabras
  • archivo: archivo
  • directorio: carpeta / directorio
  • ruta:
    varios separadores importantes de la ruta
    static String pathSeparator
    es el carácter separador de ruta relacionado con el sistema, que se expresa como una cadena para mayor comodidad.
    static char pathSeparatorChar
    El separador de ruta asociado con el sistema.
    static String separator
    El nombre predeterminado asociado con el sistema, el carácter separador, expresado como una cadena de manera conveniente.
    static char separatorChar
    es el separador de nombre predeterminado asociado con el sistema.

Indicación de código:

	public class Demo01File {
	 public static void main(String[] args) {

    String pathSeparator = File.pathSeparator;
    System.out.println(pathSeparator);//路径分隔符号。windows系统;号,linux:。
    String separator = File.separator;
    System.out.println(separator);//文件名称分隔符 windows\linux/。
    //注意点操作路径不能写死了
    /*C:\develop\a\a.txt windows
    * c:/develop/a/a.txt linux
    * 应该写成:"c:"+File.separator+"develop"+File.separator+"a"+File.separator+"a.txt" linux*/

   }
	}

¡Presenta tres métodos de construcción!

Ruta absoluta Ruta
relativa: (Omita el directorio raíz, este elemento escribe la carpeta después del directorio raíz, el nombre del archivo es suficiente)
Nota:

  • 1. La ruta no distingue entre mayúsculas y minúsculas
  • 2. El separador de nombre de archivo en la ruta Windows usa barras invertidas. Las barras invertidas son caracteres de escape. Dos barras invertidas representan una barra invertida normal.
    Tres rutas corresponden a tres métodos diferentes, ver más abajo.
    Los estudiantes que no establecerán la ruta relativa pueden consultar https://blog.csdn.net/sljackson/article/details/79655427

Demostración de código:

public class Demo02Filelujing {
public static void main(String[] args) {
    //show01();//File(String pathname)
    //show02("c:"+File.separator,"a.txt");//File(String parent, String child)
    //show02("d:"+File.separator,"a.txt");
    File f=new File("c:"+File.separator);
    show03( f,"hello.java");//File(File parent, String child)

}

private static void show03(File parent,String child) {
    //File(File parent, String child)
    //从父抽象路径名和子路径名字符串创建新的 File实例
    File f=new File(parent,child);
    System.out.println(f);
}

private static void show02(String parent,String child) {
    //File(String parent, String child)
    //从父路径名字符串和子路径名字符串创建新的 File实例。
    File f1=new File(parent,child);
    System.out.println(f1);
}

private static void show01() {
    //File(String pathname)
    //通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。
    /*参数
    * String pathname:字符串的路径名称
    * 路径可以是文件结尾,也可以是文件夹结尾
    * 路径可以是相对路径,也可以是绝对路径
    * 路径可以是存在的,也可以是不存在的
    * 创建File对象,只能把字符串路径封装为File对象,不考虑路径的真假情况*/
    File f1=new File("E:\\xpu\\ideaproject\\20190905\\src\\cn\\itcast\\API\\Calendar");
    System.out.println(f1);//E:\xpu\ideaproject\20190905\src\cn\itcast\API\Calendar
    File f2=new File("E:\\xpu\\ideaproject\\20190905\\src\\cn\\itcast\\API\\Calendar\\Demo01Calendar.java");
    System.out.println(f2);//E:\xpu\ideaproject\20190905\src\cn\itcast\API\Calendar\Demo01Calendar.java
    File f3=new File("src\\cn\\itcast\\API\\Calendar\\Demo01Calendar.java");
    System.out.println(f3);//src\cn\itcast\API\Calendar\Demo01Calendar.java
    File f4=new File("src"+ File.separator+"cn"+ File.separator+"itcast"+ File.separator+"API"+ File.separator+"Calendar"+ File.separator+"Demo01Calendar.java");
    System.out.println(f4);//src\cn\itcast\API\Calendar\Demo01Calendar.java
}

}

Varios métodos de archivo

1. Obtenga la ruta absoluta
2. Obtenga la ruta
3. Obtenga el nombre del archivo o directorio
4. Obtenga la longitud del archivo (el directorio es la carpeta, ya sea que haya archivos en él o no, es 0 bytes)

1. String getAbsolutePath ()
devuelve esto La cadena de nombre de ruta absoluta del nombre de ruta abstracto.
2 / public String getPath () convierte este nombre de ruta abstracto en una cadena de nombre de ruta. La cadena de resultado utiliza el carácter separador de nombre predeterminado para separar los nombres en el orden de los nombres.
3. public String getName () devuelve el nombre del archivo o directorio representado por este nombre de ruta abstracto. Este es solo el apellido en la secuencia de nombres de ruta. Si la secuencia de nombres del nombre de la ruta está vacía, se devuelve una cadena vacía.
4. public long length () devuelve la longitud del archivo representado por este nombre de ruta abstracto. Si este nombre de ruta representa un directorio, el valor de retorno no está especificado

Indicación de código:

public class Demo03FileMethods {
public static void main(String[] args) {
    //demo01();//String getAbsolutePath()
    //demo02();//public String getPath()
    demo03();//public String getName()
    //demo04();//public long length()
}

private static void demo03() {//返回最后一个(文件/文件夹)
    File f2=new File("E:\\xpu\\ideaproject\\20190905\\src\\cn\\itcast\\File\\Demo01File.java");
    System.out.println(f2.getName());//Demo01File.java
    File f3=new File("src\\cn\\itcast\\File");
    System.out.println(f3.getName());//File
}

private static void demo04() {
    File f2=new File("E:\\xpu\\ideaproject\\20190905\\src\\cn\\itcast\\File\\Demo01File.java");
    System.out.println(f2.length());//1623
    File f3=new File("src\\cn\\itcast\\File\\Demo01File.java");
    System.out.println(f3.length());//1623
    //文件夹,返回值为0
    System.out.println(new File("src\\cn\\itcast\\File").length());//0
    //不存在的文件,返回值为0
    System.out.println(new File("src\\cn\\itcast\\File\\a.txt").length());//0
}

private static void demo02() {
    File f2=new File("E:\\xpu\\ideaproject\\20190905\\src\\cn\\itcast\\File\\Demo01File.java");
    String path = f2.getPath();
    System.out.println(path);//E:\xpu\ideaproject\20190905\src\cn\itcast\File\Demo01File.java
    File f3=new File("src\\cn\\itcast\\File\\Demo01File.java");//如何修改根目录,https://blog.csdn.net/sljackson/article/details/79655427
    System.out.println(f3);//src\cn\itcast\File\Demo01File.java
    System.out.println(f3.toString());/* public String toString() {return getPath();}*///src\cn\itcast\File\Demo01File.java
    System.out.println(f3.getPath());//src\cn\itcast\File\Demo01File.java
}

private static void demo01() {
    //String getAbsolutePath()
    File f2=new File("E:\\xpu\\ideaproject\\20190905\\src\\cn\\itcast\\File\\Demo01File.java");
    String absolutePath = f2.getAbsolutePath();//绝对路径获取还为本身
    System.out.println(absolutePath);//E:\xpu\ideaproject\20190905\src\cn\itcast\File\Demo01File.java
    File f3=new File("src\\cn\\itcast\\File\\Demo01File.java");//如何修改根目录,https://blog.csdn.net/sljackson/article/details/79655427
    System.out.println(f3.getAbsolutePath());//相对路径,是+上根路径。相关的根路径在run-》Editconfiguration-》working directory中修改(当前工作区)
    //E:\xpu\ideaproject\20190905\src\cn\itcast\File\Demo01File.java

}
}

Supongo que te gusta

Origin blog.csdn.net/tangshuai96/article/details/102723605
Recomendado
Clasificación