• Java之file操作


    File类既可以表示文件,也可以表示为文件夹

    文件的创建、删除、重命名

    1、文件的创建

    File file=new File("new Hello.txt");//当前工程目录下

    file.createNewFile();

    File file=new File("bin/hello.txt");//当前工程目录下的bin文件夹下

    file.createNewFile();

    File file=new File("../hello.txt");//当前工程目录的上一级目录

    file.createNewFile();

    File file=new File("../../hello.txt");//上一级的上一级目录

    file.createNewFile();

    2、文件的删除

    file.delete();

    3、文件的重命名

    (1)重命名文件

    File file=new File("Hello.txt");

    File nameto=new File("new Hello.txt");

    file.renameTo(nameto);

    (2)复制文件到指定目录(文件夹结构必须处于同一个分区,文件处于不同的分区,需要使用文件的拷贝,而不是文件的重命名)

    File nameto=new File("new Hello.txt");

    File nameto=new File("src/new Hello.txt");

    file.renameTo(nameto);//把文件从根目录拷贝到根目录下src目录下

    文件夹的创建、删除、重命名

    文件夹的创建

    创建单一文件夹

    File folder=new File("my new folder");

    folder.mkdir();//返回的是一个bool值

    创建整个文件夹目录

    File folder=new File("my new folder/one/two/three/main");

    folder.mkdirs();

    文件夹的重命名

    File folder=new File("my new folder");
    File newfolder=new File("my new folder-new");
    folder.renameTo(newfolder);

    文件夹的删除

    File newfolder=new File("my new folder-new");
    newfolder.delete();//删除时,当前文件夹必须是空的,否则不能被删除,删除失败,和文件的删除不同

    文件属性的读取

    [java] view plain copy
     
    1. package com.jingchenyong.io;  
    2. import java.io.File;  
    3. public class FileTest1 {  
    4.     public static void main(String[] args) {  
    5.         File file=new File("text.txt");  
    6.         //判断文件是否存在  
    7.         System.out.println("判断文件是否存在"+file.exists());  
    8.         //读取文件名称  
    9.         System.out.println("读取文件名称"+file.getName());  
    10.         //读取文件路径(相对路径)  
    11.         System.out.println("读取文件路径"+file.getPath());  
    12.         //读取文件绝对路径  
    13.         System.out.println("读取文件绝对路径"+file.getAbsolutePath());  
    14.         //读取文件的父级路径  
    15.         System.out.println("读取文件的父级路径"+new File(file.getAbsolutePath()).getParent());  
    16.         //读取文件的大小  
    17.         System.out.println("读取文件的大小"+file.length()+"byte");//字节  
    18.         //判断文件是否被隐藏  
    19.         System.out.println("判断文件是否被隐藏"+file.isHidden());  
    20.         //判断文件是否可读  
    21.         System.out.println("判断文件是否可读"+file.canRead());  
    22.         //判断文件是否可写  
    23.         System.out.println("判断文件是否可写"+file.canWrite());  
    24.         //判断文件是否为文件夹  
    25.         System.out.println("判断文件是否为文件夹"+file.isDirectory());  
    26.     }  
    27. }  

    文件属性的设置

    //将文件设定为可写
    file.setWritable(true);
    //将文件设定为可读
    file.setReadable(true);
    //将文件设定为只读
    file.setReadOnly();

    遍历文件夹

    [java] view plain copy
     
    1. package com.jingchenyong.io;  
    2. import java.io.File;  
    3. public class FileTest2 {  
    4.     public static void main(String[] args) {  
    5.         // TODO Auto-generated method stub  
    6.         printFiles(new File("C:/Users/jingchenyong/Desktop/desktop"),1);  
    7.         //绝对路径  
    8.         //printFiles(new File("H:/Users/jingchenyong/Workspaces/MyEclipse 8.6/Test"));  
    9.         //相对路径  
    10.         //printFiles(new File("../Test"),1);  
    11.     }  
    12.     public static void printFiles(File dir,int tab){  
    13.         if(dir.isDirectory()){  
    14.             File next[]=dir.listFiles();//返回的file对象的数组的数组  
    15.             for(int i=0;i<next.length;i++){  
    16.                 for(int j=0;j<tab;j++){  
    17.                     System.out.print("|--");  
    18.                 }  
    19.                 System.out.println(next[i].getName());  
    20.                 if(next[i].isDirectory()){  
    21.                     printFiles(next[i],tab+1);  
    22.                 }  
    23.             }  
    24.         }  
    25.     }  
    26. }  

    文件的简单读写

    [java] view plain copy
     
    1. package com.jingchenyong.io;  
    2.   
    3. import java.io.BufferedReader;  
    4. import java.io.BufferedWriter;  
    5. import java.io.File;  
    6. import java.io.FileInputStream;  
    7. import java.io.FileNotFoundException;  
    8. import java.io.FileOutputStream;  
    9. import java.io.IOException;  
    10. import java.io.InputStreamReader;  
    11. import java.io.OutputStreamWriter;  
    12. import java.io.UnsupportedEncodingException;  
    13.   
    14. public class FileTest3 {  
    15.     public static void main(String[] args) {  
    16.         // TODO Auto-generated method stub  
    17.         //读  
    18.         File file=new File("text.txt");//位于工程目录下  
    19.         if(file.exists()){  
    20.             System.err.println("exist");  
    21.             try {  
    22.                 FileInputStream fis=new FileInputStream(file);//获取文件的输入流(字节流)  
    23.                 InputStreamReader isr=new InputStreamReader(fis,"utf-8");//(字符流)  
    24.                 BufferedReader br=new BufferedReader(isr);//带有缓冲的  
    25.                   
    26.                 String line;  
    27.                 while((line=br.readLine())!=null){  
    28.                     System.out.println(line);  
    29.                 }  
    30.                 br.close();  
    31.                 isr.close();  
    32.                 fis.close();  
    33.             } catch (FileNotFoundException e) {  
    34.                 // TODO Auto-generated catch block  
    35.                 e.printStackTrace();  
    36.             } catch (UnsupportedEncodingException e) {  
    37.                 // TODO Auto-generated catch block  
    38.                 e.printStackTrace();  
    39.             } catch (IOException e) {  
    40.                 // TODO Auto-generated catch block  
    41.                 e.printStackTrace();  
    42.             }  
    43.         }  
    44.           
    45.         //写  
    46.         try {  
    47.               
    48.             File newfile=new File("next.txt");  
    49.             FileOutputStream fos=new FileOutputStream(newfile);  
    50.             OutputStreamWriter osw=new OutputStreamWriter(fos,"utf-8");  
    51.             BufferedWriter bw=new BufferedWriter(osw);  
    52.               
    53.             //覆盖写入  
    54.               
    55.             bw.write("jingchenyong1 ");  
    56.             bw.write("jingchenyong2 ");  
    57.             bw.write("jingchenyong3 ");  
    58.             bw.write("jingchenyong4 ");  
    59.             bw.write("jingchenyong5 ");  
    60.               
    61.             bw.close();  
    62.             osw.close();  
    63.             fos.close();  
    64.         } catch (FileNotFoundException e) {  
    65.             // TODO Auto-generated catch block  
    66.             e.printStackTrace();  
    67.         } catch (UnsupportedEncodingException e) {  
    68.             // TODO Auto-generated catch block  
    69.             e.printStackTrace();  
    70.         } catch (IOException e) {  
    71.             // TODO Auto-generated catch block  
    72.             e.printStackTrace();  
    73.         }  
    74.     } 
    75. }
  • 相关阅读:
    C语言第一天
    【PHP学习笔记】Hello,World!
    Photoshop文本位置范围
    快捷套取单色图片
    cesium加载纽约市3dtiles模型
    Python基础——0前言
    Python基础——1基础
    Python基础——2函数
    Python基础——3特性
    Python基础——4高阶函数
  • 原文地址:https://www.cnblogs.com/alisapan/p/7728906.html
Copyright © 2020-2023  润新知