我从unix上生成了一个汉字文件,比如以下为文件片段:(其中\n为行结尾,是看不到的) 999025||全球通188元套餐||1||全球通\n
999026||全球通288元套餐||1||全球通\n
999018||动感地带校园卡||4||动感地带\n在另一个linux系统中用BufferedReader类的readLine()方法读出来(文件有若干行),然读出来的数据总是不对,好象一下就把所有文件内容给读了出来,文件内行结尾是以\n结尾,在linux系统中,因为汉字是乱码,造成文件行内容读取不正确,可是在windows系统下这样的文件可以正确读取出来,
是不是在linux系统中用readLine()方法只能读行结尾为\r\n的文件啊??还是因为汉字乱码造成的啊??
我该怎么样处理啊?请高手指点!!
我的读取程序:
FileInputStream input = new FileInputStream("filename");
//InputStreamReader reader = new InputStreamReader(input, "");
InputStreamReader reader = new InputStreamReader(input);
BufferedReader in = new BufferedReader(reader); while ((strBuf = in.readLine()) != null) {
System.out.println("line : "+ strBuf);
}
999026||全球通288元套餐||1||全球通\n
999018||动感地带校园卡||4||动感地带\n在另一个linux系统中用BufferedReader类的readLine()方法读出来(文件有若干行),然读出来的数据总是不对,好象一下就把所有文件内容给读了出来,文件内行结尾是以\n结尾,在linux系统中,因为汉字是乱码,造成文件行内容读取不正确,可是在windows系统下这样的文件可以正确读取出来,
是不是在linux系统中用readLine()方法只能读行结尾为\r\n的文件啊??还是因为汉字乱码造成的啊??
我该怎么样处理啊?请高手指点!!
我的读取程序:
FileInputStream input = new FileInputStream("filename");
//InputStreamReader reader = new InputStreamReader(input, "");
InputStreamReader reader = new InputStreamReader(input);
BufferedReader in = new BufferedReader(reader); while ((strBuf = in.readLine()) != null) {
System.out.println("line : "+ strBuf);
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货