<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 0, comments - 77, trackbacks - 0, articles - 356
      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    從File類開始IO系統(tǒng)介紹

    Posted on 2006-10-18 14:17 semovy 閱讀(228) 評論(0)  編輯  收藏 所屬分類: 文件方面
    從File類開始IO系統(tǒng)介紹
    作者: 來源: 更新時(shí)間:2006-01-10
    ?????????? 無論學(xué)習(xí)那種語言都難免要接觸到文件系統(tǒng),要經(jīng)常和文件打交道。Java當(dāng)然也不例外,有些網(wǎng)友覺得IO的設(shè)計(jì)很煩瑣,有的時(shí)候我也有這樣的感覺,其實(shí)用的熟練了,倒是覺得這個(gè)東西還是挺方便的。在介紹Java IO之前首先介紹一下非常重要的一個(gè)類File。

    ????????????? 在看到這個(gè)類的名字后你一定認(rèn)為它代表一個(gè)文件,事實(shí)上這樣認(rèn)為并不準(zhǔn)確,因?yàn)镴ava中的File類可以代表文件也可以代表目錄。在API doc中說明了這一點(diǎn),同時(shí)把File用abstract pathname來代表。不過想想目錄不也就是特殊的文件嗎?


    ??? File的使用非常的簡單,它有四個(gè)構(gòu)造函數(shù):
    File(String parent,String child)
    File(File parent,String child)
    File(URI uri)
    File(String pathname)
    其中前面兩個(gè)可以讓我們在某個(gè)已知特定的目錄下新建文件或者目錄,后面兩個(gè)我們可以通過pathname或者URI新建文件或者目錄。有一點(diǎn)需要注意,F(xiàn)ile雖然是一個(gè)系統(tǒng)無關(guān)的代表,但是pathname的表示是和系統(tǒng)相關(guān)的,比如UNIX下"/"表示root目錄,而windows下通常用盤符來表示。比如絕對路徑C:helloworldmingjava,如果是相對路徑的話則不以"/"開頭,一般相對路徑是相對當(dāng)前目錄的。當(dāng)我們創(chuàng)建一個(gè)File的時(shí)候可以通過exists()方法判斷它是否存在,如果不存在我們可以選擇是創(chuàng)建為文件還是創(chuàng)建為目錄。例如
    ?File file = new File("hehe");
    ??if(!file.exists())
    ??{
    ???file.mkdir();?
    ??}?
    ?for(int i=0;i <5;i++)
    ???{
    ????File listFile = new File(nextFile,"ming"+i+".txt");
    ????if(!listFile.exists())
    ????{
    ?????listFile.createNewFile();?
    ????}
    ???
    ???}
    如果我們已經(jīng)知道一個(gè)File對象,希望在他的目錄之下新建文件,那么就可以使用第一個(gè)構(gòu)造器了。比如
    File nextFile = new File(file,"ming\hehe");
    ??if(!nextFile.exists())
    ??{
    ???nextFile.mkdirs();?
    ??}
    注意創(chuàng)建多層目錄的時(shí)候要用mkdirs()。我們還可以列舉出一個(gè)目錄下的文件列表,通過list()方法可以得到一個(gè)String[]類型的數(shù)組,這就是目錄下的文件名稱。
    ?String[] list = nextFile.list();
    ???for(int j = 0;j<list.length;j++)
    ???{
    ????System.out.println(list[j]);?
    ???}
    File的使用并不復(fù)雜,如果有問題多參考一下API doc一般就可以解決了,下面是我寫的一個(gè)小例子,說明如何使用File文件。
    import java.io.*;
    import java.net.*;


    public class TestFile
    {
    ?public static void main(String[] args) throws IOException
    ?{
    ??File file = new File("hehe");
    ??if(!file.exists())
    ??{
    ???file.mkdir();?
    ??}?
    ??File nextFile = new File(file,"ming\hehe");
    ??if(!nextFile.exists())
    ??{
    ???nextFile.mkdirs();?
    ??}
    ??System.out.println(nextFile.getParent());
    ??
    ??if(nextFile.isDirectory())
    ??{
    ???File newFile = new File(nextFile,"ming.txt");
    ???if(!newFile.exists())
    ???{
    ????newFile.createNewFile();
    ????System.out.println(newFile.getName());
    ????System.out.println(newFile.getAbsoluteFile());
    ????
    ???}
    ???for(int i=0;i <5;i++)
    ???{
    ????File listFile = new File(nextFile,"ming"+i+".txt");
    ????if(!listFile.exists())
    ????{
    ?????listFile.createNewFile();?
    ????}
    ???
    ???}
    ???String[] list = nextFile.list();
    ???for(int j = 0;j<list.length;j++)
    ???{
    ????System.out.println(list[j]);?
    ???}??
    ??}
    ??
    ??
    ?}?
    }

    運(yùn)行結(jié)果:
    hehe\ming
    ming.txt
    D:\臨時(shí)資料\temp\hehe\ming\hehe\ming.txt
    ming.txt
    ming0.txt
    ming1.txt
    ming2.txt
    ming3.txt
    ming4.txt



    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: a视频免费在线观看| 四虎成人精品一区二区免费网站| 亚洲精品在线视频观看| 午夜影视在线免费观看| 中文在线免费看视频| 亚洲欧洲日产韩国在线| 又粗又硬又大又爽免费视频播放| 鲁丝片一区二区三区免费| 亚洲精华国产精华精华液| 国产亚洲一区二区三区在线| 青春禁区视频在线观看直播免费| 日本视频免费观看| 亚洲国产成人久久| 伊人亚洲综合青草青草久热| 久久久久国产精品免费免费搜索| 永久免费无码日韩视频| 亚洲午夜电影在线观看| 国产AV无码专区亚洲AV漫画 | 久久成人免费大片| 最新亚洲人成网站在线观看| 亚洲av日韩av激情亚洲| 四虎永久在线精品免费观看地址| 99久久人妻精品免费二区| 色吊丝免费观看网站| 亚洲Av无码一区二区二三区| 亚洲午夜福利在线观看| 黄网址在线永久免费观看| 最近免费mv在线电影| 三上悠亚电影全集免费| 污视频网站免费在线观看| 亚洲人成人77777在线播放| 日本红怡院亚洲红怡院最新| 国产91久久久久久久免费| 999国内精品永久免费视频| 一级毛片试看60分钟免费播放| 亚洲中文无码mv| 亚洲精品在线电影| 亚洲日本一区二区| 国产av天堂亚洲国产av天堂| 亚洲国产香蕉人人爽成AV片久久| 啦啦啦中文在线观看电视剧免费版|