求助关于流写入的问题import java.io.*;
class testfilew {
public static void main (String[] args) throws  Exception
   {
   
      File  fe=new File("3.txt");
          fe.createNewFile();
          FileWriter fw=new FileWriter(fe);
          int i=0;
          String  [] str=new String [1024];
          
          BufferedReader in
     = new BufferedReader(new InputStreamReader(System.in));
          while(true)
           {       
              str[i]=in.readLine(); 
       //   System.out.print(str[i]);      
             fw.write(str[i]);
               i++ ;      
              if(i==4)
               break;            }
              for (int x = 0; x<4; x++) {
               System.out.print(str[x]);
     }
             
             fw.flush();
             fw.close();
              }
}上面是我写的代码,为什么加了哪行注释和不加哪行注释完全不同,加了打出的结果都是第一次输入的,不加的话就正常,希望高于指点一下,先谢谢了
 

解决方案 »

  1.   


    package csdn_Test_20071126;
    import java.io.*;
    public class Testfilew { /**
     * @param args
     */
    public static void main(String[] args)throws Exception {
    // TODO Auto-generated method stub
    int   i=0; 
            String     []   str=new   String   [1024]; 
            
            BufferedReader   in 
    =   new   BufferedReader(new   InputStreamReader(System.in)); 
            while(true) 
              {               
                    str[i]=in.readLine();   
                    System.out.print(str[i]);             
                      i++   ;             
                }  }}
    我这都能正常显示,你再调调别的问题
      

  2.   

    楼主我这里显示也是正常的,没有问题。
    1、System.out.print(str[i]); 不注释 结果:        
    asdf  //输入
    asdf  //fw.write(str[i])打印 
    fdsa
    fdsa
    qwer
    qwer
    poiuy
    poiuy
    asdffdsaqwerpoiuy    //System.out.print(str[x]) 打印2、注释掉  打印结果
    asdf   
    fdsa
    qwer
    poiuy//上面是输入
    asdffdsaqwerpoiuy  //System.out.print(str[x]) 打印 
      

  3.   

    哪就奇怪了,我用了几个机器测试都一样的结果
    这是我加了注释的结果
    --------------------配置:            wan - jsdk < - <默认>     --------------------
    as
    df
    fg
    hj
    asasasas
    处理已完成。这是没加注释的结果
    --------------------配置:            wan - jsdk < - <默认>     --------------------
    as
    asdf
    dffg
    fghj
    hjasdffghj
    处理已完成。不解中~~~~~~~~~~~~~~~~
      

  4.   

    你的程序应该没问题。
    猜测你的文件应是正确的,而上面所贴的内容是打印在终端上的内容吧? 
    估计你所用的标准输入输出是同一个终端,则可以这样解释你没加注释时的打印:
    as //你输入的as
    asdf //as是System.out.print(str[i])打印出的,df是你输入的
    dffg //df是System.out.print(str[i])打印的,....以此类推,你输入的内容总是在回车后被打印到终端
    fghj 
    hjasdffghj