Здравствуйте , Я изучаю информатику в Китае, и у меня простая проблема: не знаю почему, пожалуйста, ответьте мне, спасибо. FileInputStream Проблема , используйте FileInputStream для чтения файла , и покажите это. Текстовый текст включает две строки ,, и все они содержат 15 символов ,, но результат выглядит следующим образом:
=(-
=1-
=,-
=2-
=,-
=1-
=0-
=)-
-
=
-
=(-
=1-
=,-
=4-
=,-
=5-
=)-
17
Я не понимаю, почему мне показано, что '' = - = "(11-13 строк результата ) , И длина должна быть 15 почему 17 ????
//Code and Txt
Сначала , ReadFile. java как показано ниже :
package cn.bin;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
public class BestWayMP {
private static final String FilePath="bestWayMP.txt";
/**
* 读取文件内容
* @return 拼接的字符串
* @throws IOException IO异常
*/
public String LoadingFiles() throws IOException {
File file=new File(FilePath);
StringBuffer buf=new StringBuffer();
if(file!=null&&file.isFile()){
FileInputStream fileInputStream=null;
fileInputStream=new FileInputStream(file);
byte r[]=new byte[1024];
int len;
while((len=fileInputStream.read(r))!=-1){
String str=new String(r,0,len,"utf-8");
buf.append(str.trim());
}
}else{
System.out.println("文件不存在");
}
return buf.toString();
}
public static void main(String args[]){
try {
String str=new BestWayMP().LoadingFiles();
for(int x=0;x<str.length();x++){
System.out.println("="+str.charAt(x)+"-");
}
System.out.println(str.length());
} catch (IOException e) {
e.printStackTrace();
}
}
}
Второе content содержимое bestWayMP.txt следующим образом (кодировка - utf-8) :
(1,2,10)
(1,4,5)