[問題] 有關FileInuptStream...
import java.io.*;
public class test {
public static void main(String args[]) throws IOException{
char data[]= new char[2048]; //建立字元陣列
byte text[]=new byte[2048]; //建立位元組陣列
int count=0;
String st;
FileInputStream fis = new FileInputStream("Sample.txt"); //建立fis物件
int is=fis.read(text); //讀取檔案的位元組
FileReader fir = new FileReader("Sample.txt");
BufferedReader bf= new BufferedReader(fir); //讀取檔案行數
int sum=0;
while((st=bf.readLine())!= null ) {
count++;
sum+=st.length();
}
System.out.println("Sample.txt含有"+is+"個位元組 , "+sum+"個字元
, "+count+"列資料");
}
}
上面是一個完整的小程式,在讀取一個文字檔內容的位元組,字元數和資料行數
執行黃色那兩行時,位元組為358.
如果改寫成int is=fis.read(); 則為164個位元組
又,如果改寫成System.out.println("Sample.txt含有"+fis.read()+"個位元組
則有173個位元組
造成這些不同結果的原因是什麼呢?想了很久沒有頭緒,請大家幫忙看看,謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.229.203.88
※ 編輯: seekyou 來自: 220.229.203.88 (04/28 20:24)
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 7 篇):
java 近期熱門文章
PTT數位生活區 即時熱門文章