从记事本中读取内容,但是不能读取中文
----------------------------
import java.io.*;
public class ErrorHand{

public static void main(String[] args) 
{

try{
  
 File file=new File("read.txt");



FileInputStream fis=new FileInputStream(file);
FileOutputStream fos=new FileOutputStream(file);
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
 int c;
   while((c=in.read())!=-1)
   fos.write(c);           fos.close();
   
         
BufferedReader out = new BufferedReader(new FileReader("read.txt"));
     System.out.println("从read.txt"+"文件读取的内容是:");
String content="";
    while((content=out.readLine())!=null){
    System.out.println(content);//读一行输出一行
     }   
   
            fis.close();   

}
catch(FileNotFoundException w){
System.out.println(w.toString());
}
catch(IOException e){
 System.out.println(e.toString());
}


}
}

解决方案 »

  1.   

    import java.io.*;
    public class ReadFile {

    public static void main(String[] args) {

    try{
      
    File file=new File("data.dat");
    FileWriter fos=new FileWriter(file);
    //FileOutputStream fos=new FileOutputStream(file);

    BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); System.out.println("aaa");
        int c;
        while((c=in.read())!='\n')
        
         fos.write(c);
        System.out.println("bbb");
        fos.close();
       
             
        BufferedReader out = new BufferedReader(new FileReader("data.dat"));
        System.out.println("从data.dat"+"文件读取的内容是:");
        String content="";
        while((content=out.readLine())!=null){
         System.out.println(content);//读一行输出一行
        }   
       
               

    }
    catch(FileNotFoundException w){
    System.out.println(w.toString());
    }
    catch(IOException e){
    System.out.println(e.toString());
    }

    }
    }按着上面的代码改一边应该行了,我觉得你要用Reader读取就应定要用Writer来写入文件。
      

  2.   

    将while((c=in.read())!=-1)改为while((c=in.read())!='\n') 就可以了谢谢呀