中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

分享一些java操作文件的方法技巧

發布時間:2020-11-09 17:43:44 來源:億速云 閱讀:160 作者:Leah 欄目:編程語言

分享一些java操作文件的方法技巧?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

File類簡介

package com.file;

import java.io.File;
import java.io.IOException;

/**
 * Created by elijahliu on 2017/2/10.
 */
public class filetest {
  public static void main(String[] args) {
    File file = new File("hello.txt");
    //是否存在
    if (file.exists()) {
      //文件
      System.out.println(file.isFile());
      //路徑(文件夾)
      System.out.println(file.isDirectory());

      File nameto = new File("new Hello.txt");
      file.renameTo(nameto);//這里就是重命名文件的操作,直接新建一個file對象然后使用renameTo方法可以重命名文件

    } else {
      System.out.println("文件不存在");
      try {
        file.createNewFile();
        System.out.println("文件已被創建");
      } catch (IOException e) {
        System.out.println("文件無法創建");
      }
    }
    if (file.exists()) {
      //刪除文件
      file.delete();
      System.out.println("刪除文件");
    } else {
    }
  }
}

文件夾操作

package com.file;

import java.io.File;

/**
 * Created by elijahliu on 2017/2/11.
 */
public class HelloFolder {
  public static void main(String[] args) {
    File folder = new File("my new folder");
    if (folder.mkdir()) {//創建文件夾 判斷是否成功
      System.out.println("文件夾創建完成");
      File newfolder = new File("myn new foleder - new");
      folder.renameTo(newfolder);//這里重命名了文件夾 文件夾的重命名是可以單獨更改一級的文件夾名的 而這一級下面的文件夾不變 保存目錄結構
      if (folder.delete()) {
        System.out.print("done");//這里的刪除只能刪除空文件夾,如果文件夾中有東西,那么則不能刪除,不問三七二十一直接刪除一個非空文件夾是非常不負責任的
      } else {
        System.out.println("fail");
      }

    }else{
      if (folder.exists()) {
        System.out.println("文件夾已經存在不用創建");
      }else{
        System.out.println("文件夾創建失敗");
      }
    }
    File folders = new File("my new folder/one/two/three/main");
    folders.mkdirs();//在java中用mkdir只能創建一個,mkdirs可以創建多級目錄

  }
}

文件屬性設置

package com.file;

import java.io.File;

/**
 * Created by elijahliu on 2017/2/11.
 */
public class SetFileProperty {
  public static void main(String[] args){
    File file = new File("test.file");
    if (file.exists()){
      file.setWritable(true);//可寫
      file.setReadable(true);//可讀
      file.setReadOnly();//只讀
    }
  }
}

遍歷文件夾

  public void printFiles(File dir,int tab) {//tab為不同目錄結構的縮進量
    if (dir.isDirectory()) {
      File next[] = dir.listFiles();//判斷如果是目錄 則返回目錄所有的文件名數組用于遍歷文件夾
      for (int i = 0;i<next.length;i++) {//層次縮進輸出
        System.out.print("---");
      }
      for(int i = 0;i<next.length;i++) {//這里用了遞歸獲取目錄結構
        System.out.println(next[i].getName());
        if (next[i].isFile()) {
          printFiles(next[i],++tab);

        }
      }
    }
  }

文件簡單讀寫

package com.file;

import java.io.*;

/**
 * Created by elijahliu on 2017/2/11.
 */
public class ReadFile {
  public static void main(String[] args) {
    File file = new File("new Hello.txt");
    if(file.exists()){
      System.err.print("exsit");
      try (FileInputStream fis = new FileInputStream(file)) {//文件輸入流 這是字節流

        InputStreamReader isr = new InputStreamReader(fis,"UTF-8");//inputstreamReader是一個字節流,將字節流和字符流轉化的時候,就需要制定一個編碼方式,不然就會亂碼
        BufferedReader br = new BufferedReader(isr);//字符緩沖區

        String line;
        while((line = br.readLine())!=null){//這里將緩沖區里的內容如果非空就讀出來打印
          System.out.println(line);

        }
        br.close();//最后將各個線程關閉
        isr.close();
        fis.close();
      } catch (FileNotFoundException e) {
        e.printStackTrace();
      } catch (IOException e) {
        e.printStackTrace();
      }
    }
    File newfile = new File("newtext.txt");
    try {
      FileOutputStream fos = new FileOutputStream(newfile);//這里如果文件不存在會自動創建文件
      OutputStreamWriter osw = new OutputStreamWriter(fos, "UTF-8");//和讀取一樣這里是轉化的是字節和字符流
      BufferedWriter bw = new BufferedWriter(osw);//這里是寫入緩沖區

      bw.write("厲害了我的哥");//寫入字符串

      bw.close();//和上面一樣 這里后打開的先關閉 先打開的后關閉
      osw.close();
      fos.close();
      System.out.println("done");
    } catch (FileNotFoundException e) {
      e.printStackTrace();
    } catch (UnsupportedEncodingException e) {
      e.printStackTrace();
    } catch (IOException e) {
      e.printStackTrace();
    }

  }
}

關于分享一些java操作文件的方法技巧問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

惠安县| 徐闻县| 同江市| 翁牛特旗| 临清市| 罗平县| 仙居县| 白城市| 大埔县| 开封市| 开原市| 金塔县| 广灵县| 贺州市| 霞浦县| 繁峙县| 古浪县| 武陟县| 顺义区| 宁陵县| 隆子县| 凌源市| 连城县| 天全县| 长春市| 奉新县| 虞城县| 黄石市| 江津市| 银川市| 东乡| 石家庄市| 奉贤区| 常熟市| 望都县| 图片| 永寿县| 合水县| 巴南区| 虞城县| 莱西市|