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)  編輯  收藏 所屬分類: 一些收藏

          主站蜘蛛池模板: 峨眉山市| 抚远县| 西乌| 成都市| 平定县| 连城县| 黄石市| 河西区| 北流市| 石景山区| 应用必备| 阿瓦提县| 翼城县| 泗洪县| 确山县| 九龙坡区| 章丘市| 即墨市| 瑞昌市| 老河口市| 罗源县| 中超| 班戈县| 布拖县| 贞丰县| 龙口市| 泸水县| 成武县| 万全县| 当阳市| 博湖县| 芦溪县| 游戏| 巨鹿县| 永胜县| 恭城| 常山县| 含山县| 黄石市| 井冈山市| 永泰县|