public void testBb() { byte[] buffer = new byte[20];
try {
FileInputStream fileIn = new FileInputStream("./test/1.txt");
int bytes = fileIn.read(buffer, 0, 5); for (int i = 0; i < 5; i++) { System.out.print(buffer[]);
}
} catch (Exception e) {
System.out.println(e);
} }
说明  :1.txt中  只有“adfsdf84e”  不知道中文怎么处理 如“adf我的sdf84e”

解决方案 »

  1.   

    不是二进制文件的话,建议使用 BufferedReader 进行读取。BufferedReader br = null;
    try {
        br = new BufferedReader(new InputStreamReader(new FileInputStream(file)), "gbk");
        br.xxxxxx
    }catch(....) {
        ....
    } finally {
       ....
    }
      

  2.   

    读文件一行一行的读就是了么BufferedReader
     in = new BufferedReader(new FileReader("./test/1.txt");
     String c="";
     while((c=in.readLine())!=null){
     System.out.print(c);
     }
      

  3.   

    br = new BufferedReader(new InputStreamReader(new FileInputStream(file)), "gbk");改为:br = new BufferedReader(new InputStreamReader(new FileInputStream(file), "gbk"));括号太多了,弄花了,呵呵
      

  4.   

    byte[]中存放的是byte类型的整数 ,所以循环遍历显示就可以咯String str = new String(byte); 就可以得到的中文了(主要还是要看中文你以什么方式存放在byte[]中咯)
      

  5.   

    中文最关键的就是 使用带有charset参数的构造方法。
      

  6.   

    byte[]中存放的是byte类型的整数 ,所以循环遍历显示就可以咯String str = new String(byte,“utf-8”); 就可以得到的中文了(主要还是要看中文你以什么方式存放在byte[]中咯)
      

  7.   

    System.out.print(new String(buffer[]));
    这样应该行了吧?