欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java  文件鎖的簡單實現(xiàn)

 更新時間:2017年07月12日 16:58:28   作者:aotian16  
這篇文章主要介紹了java 文件鎖的簡單實現(xiàn)的相關資料,需要的朋友可以參考下

java  文件鎖的簡單實現(xiàn)

             java文件鎖的功能,隱私文件及安全性的提升,實現(xiàn)起來不難,這里貼下實現(xiàn)代碼:

 實例代碼:

import java.io.File; 
import java.io.FileInputStream; 
import java.io.FileNotFoundException; 
import java.io.IOException; 
import java.io.InputStreamReader; 
import java.io.RandomAccessFile; 
import java.nio.channels.FileChannel; 
import java.nio.channels.FileLock; 
public class FileLocker { 
  public static void main(String[] args) throws IOException { 
    File f = new File("aaa.txt"); 
    System.out.println(getFileContent(f) + 1);// no lock 
    FileLock lock = getFileLock(f);// lock 
    System.out.println(getFileContent(f) + 2); 
    lock.release();// lock release 
    System.out.println(getFileContent(f) + 3);// no lock 
  } 
  /** 
   * get file content. 
   * 
   * @param file 
   * @return 
   */ 
  public static String getFileContent(File file) { 
    String line = ""; 
    String content = ""; 
    try { 
      BufferedReader bf = new BufferedReader(new InputStreamReader( 
          new FileInputStream(file))); 
      while ((line = bf.readLine()) != null) { 
        content += line; 
      } 
    } catch (FileNotFoundException e) { 
      content = "ERROR "; 
    } catch (IOException e) { 
      content = "ERROR "; 
    } 
    return content; 
  } 
  /** 
   * get lock. 
   * 
   * @param file 
   * @return 
   * @throws IOException 
   */ 
  public static FileLock getFileLock(File file) throws IOException { 
    RandomAccessFile fi = new RandomAccessFile(file, "rw"); 
    FileChannel fc = fi.getChannel(); 
    return fc.tryLock(); 
  } 
} 

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關文章

  • Spring使用Setter完成依賴注入方式

    Spring使用Setter完成依賴注入方式

    這篇文章主要介紹了Spring使用Setter完成依賴注入方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • IntelliJ IDEA 使用經(jīng)驗總結(推薦)

    IntelliJ IDEA 使用經(jīng)驗總結(推薦)

    這篇文章主要介紹了IntelliJ IDEA 使用經(jīng)驗總結,非常不錯,具有參考價值,需要的朋友可以參考下
    2018-02-02
  • springboot整合RabbitMQ發(fā)送短信的實現(xiàn)

    springboot整合RabbitMQ發(fā)送短信的實現(xiàn)

    本文會和SpringBoot做整合,實現(xiàn)RabbitMQ發(fā)送短信,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-05-05
  • SpringBoot+WebSocket搭建簡單的多人聊天系統(tǒng)

    SpringBoot+WebSocket搭建簡單的多人聊天系統(tǒng)

    WebSocket是一種在單個TCP連接上進行全雙工通信的協(xié)議。這是一種比較官方的說法,簡單點來說就是,在一次TCP連接中,通信的雙方可以相互通信。這篇文章主要介紹了SpringBoot+WebSocket搭建簡單的多人聊天系統(tǒng),需要的朋友可以參考下
    2019-10-10
  • java中關于控件JTextArea的幾個方法

    java中關于控件JTextArea的幾個方法

    這篇文章主要介紹了java中關于控件JTextArea的幾個方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • Java Atomic類及線程同步新機制原理解析

    Java Atomic類及線程同步新機制原理解析

    這篇文章主要介紹了Java Atomic類及線程同步新機制原理解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-07-07
  • 如何基于SpringWeb?MultipartFile實現(xiàn)文件上傳、下載功能

    如何基于SpringWeb?MultipartFile實現(xiàn)文件上傳、下載功能

    在做項目時,后端經(jīng)常采用上傳文件組件MultipartFile,下面這篇文章主要給大家介紹了關于如何基于SpringWeb?MultipartFile實現(xiàn)文件上傳、下載功能的相關資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-07-07
  • 利用java、js或mysql計算高德地圖中兩坐標之間的距離

    利用java、js或mysql計算高德地圖中兩坐標之間的距離

    最近因為工作的需求,需要計算出高德地圖中兩個坐標的距離,通過查找相關資料發(fā)現(xiàn)了多種實現(xiàn)的方法,下面這篇文章主要給大家介紹了關于利用java、js或mysql計算高德地圖中兩坐標之間距離的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下。
    2017-10-10
  • SpringBoot+ECharts是如何實現(xiàn)數(shù)據(jù)可視化的

    SpringBoot+ECharts是如何實現(xiàn)數(shù)據(jù)可視化的

    今天帶大家學習的是關于Java的相關知識,文章圍繞著SpringBoot+ECharts怎么實現(xiàn)數(shù)據(jù)可視化展開,文中有非常詳細的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • Java算法之BFS,DFS,動態(tài)規(guī)劃和貪心算法的實現(xiàn)

    Java算法之BFS,DFS,動態(tài)規(guī)劃和貪心算法的實現(xiàn)

    廣度優(yōu)先搜索(BFS)和深度優(yōu)先搜索(DFS)是圖遍歷算法中最常見的兩種算法,主要用于解決搜索和遍歷問題。動態(tài)規(guī)劃和貪心算法則用來解決優(yōu)化問題。本文就來看看這些算法的具體實現(xiàn)吧
    2023-04-04

最新評論