讀取文件File,累加read.length大概是file.length的85%左右。這是怎麼回事?求大神幫忙看看。
File file = new File(path);
long fileLength = file.length();
length = reader.readLine().length();// 去除表頭
// 解析
while ((line = reader.readLine()) != null) {
try {
length += line.length();
} catch (NumberFormatException e) {
Log.d("NumberFormatException", e.getMessage());
} catch (Exception e) {
e.printStackTrace();
}
}
Log.d("Test", myPercent(length, fileLength));
////
public static String myPercent(long y, long z) {
String baifenbi = "";// 接受百分比的值
double baiy = y * 1.0;
double baiz = z * 1.0;
double fen = baiy / baiz;
NumberFormat nf = NumberFormat.getPercentInstance(); // 注釋掉的也是一種方法
nf.setMinimumFractionDigits(2); // 保留到小數點後幾位
// DecimalFormat df1 = new DecimalFormat("##.00%"); // ##.00%
// 百分比格式,後面不足2位的用0補齊
baifenbi = nf.format(fen);
// baifenbi = df1.format(fen);
return baifenbi;
}
可能存在一些諸如換行符的不可視字符