1. 程式人生 > >非常實用的Java檔案操作類

非常實用的Java檔案操作類

import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.Arrays;

/**
 * 一個非常實用的檔案操作類
 * 
 * @author zhangjunying
 * 
 */
public class TextFile extends ArrayList<String> { private static final long serialVersionUID = -1942855619975438512L; // 以字串形式讀取檔案 public static String read(String filename) { StringBuilder sb = new StringBuilder(); try { BufferedReader in = new BufferedReader(new
FileReader(new File( filename).getAbsoluteFile())); String s; try { while ((s = in.readLine()) != null) { sb.append(s); sb.append("\n"); } } finally { in.close(); } } catch
(IOException e) { throw new RuntimeException(e); } return sb.toString(); } // 在一個方法呼叫中寫一個檔案 public static void write(String fileName, String text) { try { PrintWriter out = new PrintWriter( new File(fileName).getAbsoluteFile()); try { out.print(text); } finally { out.close(); } } catch (IOException e) { throw new RuntimeException(e); } } // 讀取一個檔案,通過任何正則表示式拆分 public TextFile(String fileName, String splitter) { super(Arrays.asList(read(fileName).split(splitter))); if (get(0).equals("")) remove(0); } // 正常按行讀取 public TextFile(String fileName) { this(fileName, "\n"); } public void write(String fileName) { try { PrintWriter out = new PrintWriter( new File(fileName).getAbsoluteFile()); try { for (String item : this) out.println(item); } finally { out.close(); } } catch (IOException e) { throw new RuntimeException(e); } } /** * 讀取二進位制檔案 * * @param file * file物件 * @return * @throws IOException */ public static byte[] BinaryFile(File file) throws IOException { BufferedInputStream bf = new BufferedInputStream(new FileInputStream( file)); try { byte[] data = new byte[bf.available()]; bf.read(data); return data; } finally { bf.close(); } } /** * 讀取二進位制檔案 * * @param file * 檔案路徑 * @return * @throws IOException */ public static byte[] BinaryFile(String file) throws IOException { return BinaryFile(new File(file).getAbsoluteFile()); } // 測試,我已經在根目錄生成了一個名為reflectDemo.java的檔案 public static void main(String[] args) { String path = "/home/zhangjunying/Workspaces/MyEclipse Professional 2014/BasicInterviewQuestions/src/reflectDemo.java"; /* read() 測試 */ System.out.println(read(path)); /* write() 測試 */ write("out.d", "測試寫"); /* 構造測試 */ TextFile tf = new TextFile(path); } }

相關推薦

非常實用Java檔案操作

import java.io.BufferedInputStream; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java

Java 檔案操作操作目錄)

·列出目錄下的資訊:public String[ ] list();·列出所有的資訊以File類物件包裝:public File [ ] listFiles();範例1:列出資訊import java.

Java之路:檔案操作——File

要把程式所處理的資料在不同的記憶體容器(記憶體或外存)進行傳輸,例如將記憶體的資料寫到外存(某個檔案中),就要用到I/O(輸入/輸出)技術。Java提供的I/O操作可以把資料儲存到多種型別的檔案中。 大多數的應用程式都需要與外部的輸入/輸出裝置I/O(Input/Output)進

Java 高階程式設計-File檔案操作

1. File類說明 2. File類的基本使用 3. File類深入操作 4. 獲取檔案資訊 5. File操作案例:列出指定目錄中的全部檔案

java IO程式設計(一)檔案操作:File

        學習過程中某個知識點長時間不用老是忘記,在此記錄,下次忘記容易複習。                 在java.io包中,如果要進行檔案自身的操作(例如:建立、刪除等),只能依靠java.io.File類完成。File類中的常用方法在下表中列出 File

Java檔案操作工具FileUtils

package com.suobei.xinzhiying.base.utils.file; import com.suobei.xinzhiying.base.result.ResponseMap; import com.suobei.xinzhiying.base.utils.aliy

JAVA開發經驗(二):常用工具2.1-IO-檔案操作(FileUtil)

摘要說明: FileUtil主要是整合Apache Commons IO庫中的FileUtils類;主要包括對檔案的屬性查詢,複製,移動,檔案讀取,刪除等 Apache Commons IO庫包含實用程式類,流實現,檔案過濾器,檔案比較器,位元組序轉換類等等 Maven

Java IO操作——簡單瞭解RandomAccessFile隨機讀寫檔案操作的使用

學習目標 掌握RandomAccessFile類的作用 可以使用RandomAccessFile讀取指定位置的資料 RandomAccessFile類的主要功能是完成隨機讀取功能,可以讀取指定位置的

Java IO操作——檔案操作File的使用

 學習目標 掌握File類的使用 可以使用File類中的方法對檔案進行操作。 在整個Java的學習中,個人感覺學習較為困難的地方就是IO,因為整個IO是非常龐大的,而且有很多操作的類。每個類都有各自

Java IO程式設計——File檔案操作

   在Java語言裡面提供有對於檔案作業系統操作的支援,而這個支援就在java.io.File類中進行了定義,也就是說在整個java.io包裡面,File類是唯一 一個與檔案本身操作(建立、刪除、重新命名等)有關的類,而如果要想進行File類的操作,必須要提供有完整的路徑,而後可以呼叫相

JavaJava檔案操作”實際應用

一、任務目標 1.完成一個java application應用程式,判別指定路徑下指定檔名的檔案是否存在。如果指定檔案存在,讀取並分別顯示其修改時間和檔案大小等屬性。 2.以文字方式開啟某一指定路徑指定檔名的文字檔案,讀取其內容並顯示。 3.以文字方式向某一指定路徑指定檔名的文字檔案寫入

JAVA 原子操作

上文中,guava程式碼中就用到了,在這裡再專門捋一下 部分內容源自: https://www.jianshu.com/p/712681f5aecd https://www.yiibai.com/java_concurrency/concurrency_atomiclong.html Atomi

強化JAVA圖形操作

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

Java檔案操作--inputStream轉為file

在玩爬蟲的過程中,其中有一部分是下載視訊,利用原生的HttpURLConnection獲得獲得inputStream之後,將輸入流寫入到本地檔案中,形成mp4格式的視訊檔案,發現最初使用的方法特別慢,想找尋更好的方法,提升效率。 1.原始方法 //pathName就是檔案儲存的路徑 Buff

php 的檔案操作

<?php header('Content-type:text/html;charset=utf8'); Class FILE { private static $path; private static $files = []; private static $dirs

java反射操作方法與屬性

package com.fanshe.test; public class User { private int age; private String email; private String username; public User() {

Idea不識別java檔案檔案顯示橙色)

解決: 1.點選File  -->  Project Structure 2.Modules 裡 將Content Root刪除再新增 3.重新修改maven設定(非maven專案請跳過此步) File->setting  &

java日期操作

Java.util.Date //java.util.Date與long轉換 Date date=new Date();//得到當前系統時間 System.out.println(date);//Thu Nov 22 19:21:12 CST 2018 long time = date.

File檔案操作

Java.io包中,File類是唯一一個與檔案本身操作(建立、刪除、取得資訊)有關,與檔案內容無關的程式類。 1.File類的基本使用(即可描述真實檔案,也可是個資料夾) File類的兩種例項化方式: public File(String pathname) :傳入檔案的

Java檔案操作

用Java實現對文字檔案按行進行讀取,每讀取一行後顯示此行,統計每行有多少字元並顯示統計結果。最後顯示總的行數。 import java.io.BufferedReader; import java.io.File; import java.io.FileR