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

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

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

    File的加鎖

    有時候,我們需要以獨占的方式訪問某個文件,因此,需要在打開文件時,對文件上鎖,以防其他人或進程也訪問該文件。Java本身提供了倆種鎖文件的方式:
    方式一:用RandomAccessFile類操作文件
    RandomAccessFile的open方法,提供了參數,實現以獨占的方式打開文件:
    new RandomAccessFile(file, "rws")
    其中的“rws”參數中,rw代表讀寫方式,s代表同步方式,也就是鎖。這種方式打開的文件,就是獨占方式。

    方式二:用文件通道(FileChannel)的鎖功能

    如:

    RandomAccessFile raf = new RandomAccessFile(new File("c:\\test.txt"), "rw");

    FileChannel fc = raf.getChannel();
    FileLock fl = fc.tryLock();

    if (fl.isValid()) {
    System.out.println("get the lock!");

    但這倆種方式,都只能通過RandomAccessFile訪問文件,如果只能通過InputStream來訪問文件,如用DOM分析XML文件,怎么辦呢?
    其實,FileInputStream對象,也提供了getChannel方法,只是缺省的getChannel方法,不能鎖住文件,所以,如果需要,就必須自己重寫一個getChannel方法,如:
    public FileChannel getChannel(FileInputStream fileIn, FileDescriptor fd) {
    FileChannel channel = null;
    synchronized (fileIn) {
    channel = FileChannelImpl.open(fd, true, true, fileIn);
    return channel;
    }
    }

    其實,主要是打開文件的第三個參數控制了對文件的操作模式,如果設置為false,就不能鎖住文件,缺省的getChannel方法,就是false,因此,不能鎖住文件。

    posted on 2006-05-23 08:54 扭轉乾坤 閱讀(454) 評論(0)  編輯  收藏 所屬分類: JAVA使用技巧

    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    導航

    統計

    常用鏈接

    留言簿(2)

    隨筆分類(31)

    隨筆檔案(30)

    文章分類(32)

    文章檔案(33)

    相冊

    PHP小站-首頁

    搜索

    積分與排名

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲av无码无线在线观看| 亚洲视频国产视频| 在线观看亚洲精品专区| 免费看美女被靠到爽的视频| 国产成人精品日本亚洲专一区 | 亚洲欧美精品午睡沙发| 巨波霸乳在线永久免费视频 | 国产美女a做受大片免费| 亚洲人成色777777精品| 凹凸精品视频分类国产品免费| 国产精品亚洲综合一区在线观看| 亚洲A∨午夜成人片精品网站| 一级做a免费视频观看网站| 亚洲性日韩精品一区二区三区| caoporm碰最新免费公开视频| 亚洲成AV人片在线观看| 24小时免费看片| 伊人久久五月丁香综合中文亚洲| 国产色爽女小说免费看| 一级做a爱过程免费视| 亚洲成色在线综合网站 | 亚洲精品免费在线观看| 91丁香亚洲综合社区| 国产精品无码一二区免费| 国产A∨免费精品视频| 亚洲高清在线视频| 57PAO成人国产永久免费视频| 亚洲风情亚Aⅴ在线发布| 亚洲综合精品香蕉久久网| 91香焦国产线观看看免费| 亚洲欧洲日产国码久在线| 亚洲色婷婷综合开心网| 91高清免费国产自产拍2021| 亚洲精品乱码久久久久久蜜桃图片| 亚洲国产小视频精品久久久三级| 国产无遮挡裸体免费视频在线观看| 亚洲18在线天美| 亚洲中文字幕无码日韩| 国产四虎免费精品视频| 一二三区免费视频| 亚洲国产成人超福利久久精品|