既然能打印出正确结果,说明问题不是出在StringTokenizer这里,现在一看代码就头痛,你查查保存部分的代码吧

解决方案 »

  1.   

    首先
    a---fileInStream = new FileInputStream(file);
    b---while( (readbyte = fileInStream.read()) != -1) 

    textarea.append(String.valueOf((char)readbyte)); 

    c---fileOutStream = new FileOutputStream(file); 
    这是你用到的部分代码,字节流不能处理中文,如果你要处理中文请使用字符流其次
    while(st.hasMoreTokens()){ 
    String key=st.nextToken(); 
    System.out.println(key+"\t"); 
    result2= result2+key; 

    这段代码只能去除逗号,不能自动换行
    若要自动换行应改为
    while(st.hasMoreTokens()){ 
    String key=st.nextToken(); 
    System.out.println(key+"\t"); 
    result2= result2+key+"\n\r"; 

    "\n\r"的作用是在文本文件中正确换行
    当然,最好的做法是通过流的println方法来实现换行