作者seekyou (galagala~N )
看板java
标题[问题] 有关FileInuptStream...
时间Fri Apr 28 18:52:59 2006
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)