讀檔案:
FileInputStream
通過開啟一個到實際檔案的串連來建立一個 FileInputStream,該檔案通過檔案系統中的路徑名
name 指定。建立一個新 FileDescriptor 對象來表示此檔案串連。
InputStreamReader
InputStreamReader 是位元組流通向字元流的橋樑:它使用指定的 charset 讀取位元組並將其解碼為字
符。它使用的字元集可以由名稱指定或顯式給定,否則可能接受平台預設的字元集。
BufferedReader
從字元輸入資料流中讀取文本,緩衝各個字元,從而提供字元、數組和行的高效讀取。 可以指定緩衝區
的大小,或者可使用預設的大小。大多數情況下,預設值就足夠大了。
StringBuffer
安全執行緒的可變字元序列。一個類似於 String 的字串緩衝區,但不能修改。雖然在任意時間點上
它都包含某種特定的字元序列,但通過某些方法調用可以改變該序列的長度和內容。
public static void main(String[] args) {
//讀取檔案內容
File a = new File("C:/add2.txt");
if(a.exists()){
FileInputStream fi = new FileInputStream(a);
InputStreamReader isr = new InputStreamReader(fi, "GBk");
BufferedReader bfin = new BufferedReader(isr);
String rLine = "";
while((rLine = bfin.readLine())!=null){
System.out.println(rLine);
}
}
}
寫檔案:
在 java寫檔案中,通常會使用FileOutputStream和FileWriter,FileWriter只能寫文字檔。 FileOutputStream也經常結合BufferedOutputStream。因為實際應用中寫文字檔的情況佔了大多數。所以下面測試用不同的方式產生一個相同行數、大小相同的檔案的三種不同方式。
import java.io.File;
import java.io.FileOutputStream;
import java.io.*;
public class FileTest {
public FileTest() {
}
public static void main(String[] args) {
FileOutputStream out = null;
FileOutputStream outSTr = null;
BufferedOutputStream Buff=null;
FileWriter fw = null;
int count=1000;//寫檔案行數
try {
out = new FileOutputStream(new File("C:/add.txt"));
long begin = System.currentTimeMillis();
for (int i = 0; i
上一篇:question
下一篇:awk