while(strin)  
        fos.write(c);      
你这个while的判断要表达什么意思?
strin是个String型的,怎么能作为boolean用呀
猜测楼主的意思,将strin替换成strin != null试一试~~~

解决方案 »

  1.   

    不行啊,改成
    while(strin != null)  
         fos.write(c); 
    还是不行啊
    file2.txt里什么都没有而且file2.txt有5M多
    郁闷!!!
      

  2.   

    while(strin != null)  
         fos.write(c); 
    把while改成if,现在是死循环~~~
      

  3.   

    Type does not incompatable, so think carefully yourself!
    This is only a basical problem, you should solve it by yourself.
      

  4.   

    public static void main(String args[]){      
          try{
            InputStreamReader ir;
             BufferedReader in;
             ir=new InputStreamReader(System.in);
             in=new BufferedReader(ir);
             String strin="";   
             File outFile=new File("file2.txt");      
             FileOutputStream fos=new  FileOutputStream(outFile);
         int c;  
         
         while(!(strin=in.readLine()).equals("-1"))  {   //"-1"表示输入结束
          System.out.println(strin);
         
            fos.write(strin.getBytes());     
             
         }
         fos.close();
            }
          catch(IOException e) {
        System.err.println("Test: "+e);
          }
          
    }
      

  5.   

    谢谢topil的帮忙,结贴时给15分
    谢谢!!!
      

  6.   

         int c;  
         while(strin)  
            fos.write(c); 
    这样的代码怎么可能行?
    c和strin有什么关系???
     要么写fos.write(strin.getBytes());
    // 要么写while(in.read()!=-1) .......另外我有一个问题,按照doc的说法,读到流的末端的时候,in.read()应该返回“-1”。但是在这个例子中,最终返回的不是,这是不适应为System.in一直没有结束??
      

  7.   

    --------------------------
    //将键盘上输入的一串字符写到文本文件中
    import java.io.*;
    public class Test{
      public static void main(String args[]){      
          try{
            InputStreamReader ir;
             BufferedReader in;
             ir=new InputStreamReader(System.in);
             in=new BufferedReader(ir);
             String strin="";   
     System.out.println("Input a String:");
             File outFile=new File("file.txt");      
             FileOutputStream fos=new  FileOutputStream(outFile);
         int c;      
         while(!(strin=in.readLine()).equals("-1"))  {   
          System.out.println(strin);      
            fos.write(strin.getBytes());          
         }
         fos.close();
            }
          catch(IOException e) {
        System.err.println("Test: "+e);
          }
          
    }
    }
    ----------------------------
    程序无法正常退出,哪位高手有办法解决?
    谢谢~~