StevenBot-Saltsam

          眼睛能裝下世界,為何卻裝不下眼淚? 一只風箏一輩子只為一根線冒險。 那不是一場游戲,為何總有一根線牽著心懷,隱隱作疼? 那不是一段邂逅,為何飄在橋上的影子,總纏進夢鄉? 那不是一個夢境,為何你的溫柔私語,總是不經意的響起?

          導航

          <2025年6月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          統計

          常用鏈接

          留言簿

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          datas link

          OSChinal Sources codes Library

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          java7 文件create move delete

          下面的代碼片段是由經過驗證的程序修改而來。觀察這些代碼片段你會發現,跟以前的版本相比,在 Java7 里,文件相關的操作變得簡單的多了。通過使用新的Files 類里提供的各種方法,你可以只用一行代碼就能完成下列的文件操作: 
          創建文件 
          刪除文件 
          復制文件 
          文件移動/改名 
           
            這篇文件是以你對 Java7 里提供的新的Path類很熟悉為前提,如果你不熟悉這個類,這里就簡單說一句, Path 是文件系統里對位置的一個邏輯概念,例如 c:\ 和 ../foobar.txt 都是Path。
            創建和刪除文件
            下面的代碼片段向你展示的是用 Files.createFile (Path target) 方法創建文件的基本用法。
            Path target = Paths.get ("D:\\Backup\\MyStuff.txt");  Path file = Files.createFile (target);  很多時候,出于安全的原因,你可能希望在創建的文件上設置一下屬性,例如:是否可讀/可寫/寫執行。這些屬性依賴于文件系統的種類,你需要使用跟文件系統相應的權限輔助類來完成這種操作。例如,PosixFilePermission和PosixFilePermissions 為 POSIX 文件系統設計的。下面的是在 POSIX 文件系統上的文件設置讀寫權限的用法。
          Path target = Paths.get ("D:\\Backup\\MyStuff.txt");  Set<PosixFilePermission> perms      = PosixFilePermissions.fromString ("rw-rw-rw-");  FileAttribute<Set<PosixFilePermission>> attr      = PosixFilePermissions.asFileAttribute (perms);  Files.createFile (target, attr);  這個 java.nio.file.attribute 包里提供了很多關于 FilePermission 的類。
            警告 當創建一個帶有權限屬性的文件時,請注意包含這個文件的文件夾是否有權限的強制約束。例如,你會發現,由于這些限制,盡管你給創建的文件指定了 rw-rw-rw 權限,實際創建的結果卻是 rw-r–r– 。
            刪除文件更簡單,使用 Files.delete (Path) 這個方法。
            Path target = Paths.get ("D:\\Backup\\MyStuff.txt");  Files.delete (target);  拷貝和移動文件
            下面的代碼向你展示的是使用 Files.copy (Path source, Path target) 方法做文件拷貝的基本用法。
           Path source = Paths.get ("C:\\My Documents\\Stuff.txt");  Path target = Paths.get ("D:\\Backup\\MyStuff.txt");  Files.copy (source, target);  經常的,在拷貝文件的過程中你可能希望指定一些操作設置。在 Java7 里,你可以通過使用 StandardCopyOption enum 來設置這些屬性。下面看一個例子。
            import static java.nio.file.StandardCopyOption.*;  Path source = Paths.get ("C:\\My Documents\\Stuff.txt");  Path target = Paths.get ("D:\\Backup\\MyStuff.txt");  Files.copy (source, target, REPLACE_EXISTING);  拷貝操作時可以使用的屬性還包括COPY_ATTRIBUTES (保留文件屬性) 和 ATOMIC_MOVE (確保移動事務操作的成功,否則進行回滾)。
            移動文件的操作跟拷貝很相似,使用 Files.move (Path source, Path target) 方法。
            同樣,你也可以指定移動操作的屬性,使用 Files.move (Path source, Path target, CopyOptions...) 方法里的參數來設置。
          import static java.nio.file.StandardCopyOption.*;  Path source = Paths.get ("C:\\My Documents\\Stuff.txt");  Path target = Paths.get ("D:\\Backup\\MyStuff.txt");  Files.move (source, target, REPLACE_EXISTING, COPY_ATTRIBUTES);  可以看出,新的用于文件操作的 NIO.2 API 非常便于使用。
          本篇文章來源于 Linux公社網站(www.linuxidc.com)  原文鏈接:http://www.linuxidc.com/Linux/2011-10/46053.htm

          posted on 2011-10-27 20:25 Steven_bot 閱讀(761) 評論(0)  編輯  收藏 所屬分類: 一些收藏

          主站蜘蛛池模板: 霍山县| 文昌市| 电白县| 格尔木市| 承德市| 石棉县| 宜州市| 呼和浩特市| 枞阳县| 上蔡县| 闵行区| 临朐县| 湖南省| 万州区| 广西| 彰化市| 富川| 墨玉县| 汉阴县| 沧州市| 小金县| 宝兴县| 肥城市| 克东县| 乐都县| 永宁县| 巩义市| 满洲里市| 久治县| 水城县| 大港区| 城步| 舞阳县| 扶风县| 黄浦区| 惠安县| 湘乡市| 筠连县| 涿州市| 乌拉特前旗| 青州市|