File類

新建文件
/* 下面是在當(dāng)前文件目錄下(即工程根目錄下)創(chuàng)建hello.txt文件 */
File file = new File('hello.txt');
判斷是文件還是目錄
file.isFile() /* file是文件 */
file.isDirectory()  /* file是目錄 */
判斷文件是否存在
file.exsits()
文件的 創(chuàng)建丧凤、刪除重命名

針對文件的重命名:新建文件2,將文件1的文件名重命名為文件2的文件名,可達(dá)到文件移動(dòng)的目的

注意:對于文件的移動(dòng)困介,文件必須處于同一分區(qū),例如某文件在C盤中移動(dòng)蘸际,而不能從C盤移動(dòng)到D盤座哩。如果要移動(dòng)到不同的分區(qū),需要使用文件的拷貝粮彤,而不是重命名根穷。

file.createNewFile(); /* 創(chuàng)建文件 */
file.delete(); /* 刪除文件 */
File nameTo = new File("new hello.txt");
file.renameTo(nameTo); /* 將file文件重命名 */

file類既可以表示文件也可以表示文件夾

/* 創(chuàng)建一個(gè)文件對象 */
File folder = new File("my folder");
/* 創(chuàng)建一個(gè)文件夾 */
folder.mkdir(); /* 返回true 代表文件創(chuàng)建成功 返回false 代表文件創(chuàng)建失敗 */
folder.mkdirs();

mkdir和mkdirs的區(qū)別:
????mkdir:只能創(chuàng)建一級(jí)文件夾姜骡,上級(jí)文件夾必須存在
????mkdirs:能夠創(chuàng)建多級(jí)文件夾,不要求上級(jí)文件夾必須存在

文件夾的重命名:文件夾的重命名必須處于同一分區(qū)當(dāng)中
File folder = new File("my new folder");
File newFolder = new File("my new folder-new");
folder.renameTo(newFolder);
文件夾的刪除:delete只能刪除空文件夾
File folder = new File("my new folder-new/one/two/three");
folder.delete() /* 返回true 刪除成功 返回false 刪除失敗 */
文件屬性的讀取
File file = new File("test.txt");
// 判斷文件是否存在
file.exsits()
// 讀取文件名稱
file.getName()
// 讀取文件路徑
file.getPath()
// 讀取文件絕對路徑
file.getAbsolutePath()
// 讀取文件父級(jí)路徑(file是相對路徑屿良,如何利用相對路徑獲取其上一級(jí)路徑呢圈澈?)
new FIle(file.getAbsolutePath()).getParent()
// 讀取文件大小(file.length()方法的返回是按照字節(jié)來返回的,尘惧,返回類型是long類型)
// 在硬盤上康栈,字節(jié)轉(zhuǎn)化為KB是除以1000
(long)file.length()/1000 + "KB"
// 判斷文件是否被隱藏
file.isHidden();
// 判斷文件是否可讀
file.canRead();
// 判斷文件是否可寫
file.canWrite();
// 判斷文件是否為文件夾
file.isDirectory();
文件屬性的設(shè)置
// 將文件設(shè)定為可寫(傳入?yún)?shù):true 設(shè)定為可寫,false 設(shè)定為不可寫)
file.setWritable(true);
// 將文件設(shè)定為可讀(傳入?yún)?shù):true 設(shè)定為只讀喷橙,false 設(shè)定為不可讀)
file.setReadable(true);
// 將文件設(shè)定為只讀
file.setReadOnly();
遍歷文件夾
public class OutputDirectory {
  public static void main(String[] args) {
    printFiles(new File("my new folder-new/one/two/three"), 1);
  }
  public static void pritFiles(File dir, int tab) {
    if(dir.isDirectory()) {
      // 包含當(dāng)前目錄當(dāng)中所有的子文件夾和子文件
      File next[] = dir.listFIles();
      for(int i = 0; i < next.length(); i++) {
        for(int j = 0; j < tab; j++) {
          System.out.print("|--");  
        }
        System.out.println( next[i].getName());
        if(next[i].isDirectory()) {
          printFIles(next[i], tab++);
        }
      }
    }
  }
}
文件的簡單讀寫
public class ReadFile {
    public static void main(String[] args) {
        File file = new File("test.txt");
        if (file.isExits()) {
            System.out.println("file is exist");
            try {
                // 1啥么、創(chuàng)建文件輸入流 獲取文件輸入流
                FileInputStream fis = new FileInputStream(file);
                // 2、將輸入流包裝成InputStreamReader
                // fis是一個(gè)字節(jié)流贰逾,isr是一個(gè)字符流悬荣,在進(jìn)行轉(zhuǎn)換時(shí)容易出現(xiàn)亂碼,所有需要添加utf-8編碼似踱,防止亂碼的出現(xiàn)
                InputStreamReader isr = new InputStreamReader(fis, "UTF-8");
                // 3隅熙、創(chuàng)建一個(gè)帶有 緩沖區(qū) 的reader
                BufferedReader br = new BufferedReader(isr);
                // 讀取 文件內(nèi)容并輸出
                String line;
                while((line = br.readLine()) != null) {
                    System.out.println(line);
                }
                br.close();
                isr.close();
                fis.close();
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            } catch (UnsupportedEncodingException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
            
        }
        try {
            File newFile = new File("newtext.txt");
            FileOutputStream fos = new FileOutputStream(newFile);
            OutputStreamWriter osw = new OutputStreamWriter(fos, "utf-8");
            BufferedWriter bw = new BufferedWriter(osw);
            
            bw.write("我正在寫出文件內(nèi)容至文件當(dāng)中\(zhòng)n");
            bw.writer("我正在書寫內(nèi)容\n");
            
            // 關(guān)閉輸出流, 先打開的后關(guān)閉核芽,后打開的先關(guān)閉
            fos.close();
            osw.close();
            bw.close();
        } catch(FileNotFoundException e) {
            e.printStackTrace();
        } catch(UnsupportedEncodingException e) {
            e.printStackTrace();
        }
    }
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末囚戚,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子轧简,更是在濱河造成了極大的恐慌驰坊,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,734評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件哮独,死亡現(xiàn)場離奇詭異拳芙,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)皮璧,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門舟扎,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人悴务,你說我怎么就攤上這事睹限。” “怎么了讯檐?”我有些...
    開封第一講書人閱讀 164,133評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵羡疗,是天一觀的道長。 經(jīng)常有香客問我别洪,道長叨恨,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,532評(píng)論 1 293
  • 正文 為了忘掉前任挖垛,我火速辦了婚禮痒钝,結(jié)果婚禮上秉颗,老公的妹妹穿的比我還像新娘。我一直安慰自己午乓,他們只是感情好站宗,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,585評(píng)論 6 392
  • 文/花漫 我一把揭開白布闸准。 她就那樣靜靜地躺著益愈,像睡著了一般。 火紅的嫁衣襯著肌膚如雪夷家。 梳的紋絲不亂的頭發(fā)上蒸其,一...
    開封第一講書人閱讀 51,462評(píng)論 1 302
  • 那天,我揣著相機(jī)與錄音库快,去河邊找鬼摸袁。 笑死,一個(gè)胖子當(dāng)著我的面吹牛义屏,可吹牛的內(nèi)容都是我干的靠汁。 我是一名探鬼主播,決...
    沈念sama閱讀 40,262評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼闽铐,長吁一口氣:“原來是場噩夢啊……” “哼蝶怔!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起兄墅,我...
    開封第一講書人閱讀 39,153評(píng)論 0 276
  • 序言:老撾萬榮一對情侶失蹤踢星,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后隙咸,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體沐悦,經(jīng)...
    沈念sama閱讀 45,587評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,792評(píng)論 3 336
  • 正文 我和宋清朗相戀三年五督,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了藏否。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,919評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡充包,死狀恐怖副签,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情误证,我是刑警寧澤继薛,帶...
    沈念sama閱讀 35,635評(píng)論 5 345
  • 正文 年R本政府宣布,位于F島的核電站愈捅,受9級(jí)特大地震影響遏考,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜蓝谨,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,237評(píng)論 3 329
  • 文/蒙蒙 一灌具、第九天 我趴在偏房一處隱蔽的房頂上張望青团。 院中可真熱鬧,春花似錦咖楣、人聲如沸督笆。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽娃肿。三九已至,卻和暖如春珠十,著一層夾襖步出監(jiān)牢的瞬間料扰,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評(píng)論 1 269
  • 我被黑心中介騙來泰國打工焙蹭, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留晒杈,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,048評(píng)論 3 370
  • 正文 我出身青樓孔厉,卻偏偏與公主長得像拯钻,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子撰豺,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,864評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容