首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

如何会出现 。 乱码。

2012-12-23 
怎么会出现。。乱码。。。。。。测试文章中一个单词的出现次数怎么会出现乱码???求大神带啊。。。。import java.io.Buf

怎么会出现 。。 乱码。。。。。。
测试文章中一个单词的出现次数怎么会出现乱码???求大神带啊。。。。


import java.io.BufferedInputStream;
 import java.io.FileInputStream;
 import java.io.FileOutputStream;
 import java.io.IOException;
 
 /**
  *author 谁来带我飞翔
  *vesion 创建时间 :2012-12-1下午10:32:45
  *类说明 :测试一篇英文中某个单词出现的次数
  */
 public class CountwordsDemo {
 
 /**
  * @param args
  */
 public static void main(String[] args) throws IOException{
 // TODO Auto-generated method stub
 FileInputStream f = new FileInputStream("E:测试.doc");
 BufferedInputStream b = new BufferedInputStream(f);
 int a = 0,sum = 0;
 String [] s = null;
 String ss = null;
 StringBuffer sb = new StringBuffer();
 while((a = b.read())!=-1){
 ss = String.valueOf((char)a);
 sb.append(ss);
 }
 s = sb.toString().split(" ");
 for(int i=0;i<s.length;i++){
 System.out.print(" "+s[i]);
 if(s[i].equalsIgnoreCase("the")){
 sum++;
 }
 }
 System.out.println("单词the在文章中总共出现了:"+sum+"次");
 if(b != null){
 b.close();
 }
 if(f != null){
 f.close();
 }
 }
 }
[解决办法]
doc文档的存储方式你又不知道,你就简单的以字符文本方式进行读取,肯定是乱码的啊。。。。。
[解决办法]
  FileInputStream f = new FileInputStream("E:测试.doc"); 
InputStreamReader reader = new InputStreamReader(f,"gbk");
  BufferedInputStream b = new BufferedInputStream(reader);

文本读写请包装reader,并指定相应的字符编码
doc如果是写字本文件应该可以读取,word的就不行,要用poi
[解决办法]

引用:
FileInputStream f = new FileInputStream("E:测试.doc"); 
InputStreamReader reader = new InputStreamReader(f,"gbk");
  BufferedInputStream b = new BufferedInputStream(reader);

文本读写请包装r……

使用POI专门针对office进行读取操作的,

热点排行