我想实现下用FileOutputtream往文本中写入信息,信息的来源是通过System.in.read的键盘输入,但是System.in.read返回的是整形,而BufferedReader的写入方法write(String)中要用String.怎样把整形转换成字符串,程序如下,程序中我用char数组遍历能实现,可是不想这样做,还请高手帮忙
import java.io.*;public class InOutTest 
{
     public void Systeminout(String path) throws IOException
     {
      FileOutputStream fos=new FileOutputStream(path);
      OutputStreamWriter osr=new OutputStreamWriter(fos);
      BufferedWriter bw=new BufferedWriter(osr);
      
      
      char[] s=new char[100];
      int i=0;
      for(i=0;i<10;i++)
      {
      int strline=System.in.read();
      s[i]=(char)strline;
      }
      bw.write(s);
      bw.close();
      
      String sl;
      FileInputStream fis=new FileInputStream(path);
      InputStreamReader isr=new InputStreamReader(fis);
      BufferedReader br=new BufferedReader(isr);
      
      while((sl=br.readLine())!=null)
      {
      System.out.println(sl);
      }
     }
     
     
     public static void main(String[] args) throws IOException
     {
      InOutTest iot=new InOutTest();
      iot.Systeminout("E:\\java学习\\2.txt");
     }
}

解决方案 »

  1.   

    怎样把整形转换成字符串???
    就这个问题???
    int a = 333;
    String b = a +"";
    就转换了~
      

  2.   

    比如我在键盘上输入abcdefghijk,然后就会通过BufferedWriter的write方法写入到我要的E:\\java学习\\2.txt文件中,如果用那种方法的话,我试过了,它写的是一个整形数字
      

  3.   

    比如我写入abc,它存入的确实97,是a的ascll
      

  4.   

    哦,我懂意思了~
    你是说想把这个整形(是char字符对应的整形值),转换为对应输入的字符吧?
    好像只能这样写,因为要转换为对应的char值。
    你是想直接一起转换吧?
    这个我也不知道了,我记得好像没有。
    不好意思哦,没给你解决问题~
      

  5.   

    天呀,可别吓我啊,我已经试过很多方法了,如果这样一个一个转,那System.in.read不是很不方便了啊
      

  6.   

    那可能就是偶不了解了,
    呵呵~~~
    你看看可以有其他方法直接得到String
    而不是int的没~~
      

  7.   

    嘿嘿,我解决了,原来用这样就行
              Scanner in=new Scanner(System.in);
          String s= in.nextLine();
      

  8.   

      Scanner in=new Scanner(System.in); 
        String s= in.nextLine(); 
     
    额,偶也想起来这句话了
    我刚才就是在找这个,1年多没见过这个语句了~
      

  9.   

    =,=
    都忘记Scanner,,
    还好这里有加深记忆了~
      

  10.   

    虽然结贴了,希望你能看到
    同样可以- -!
    BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
    String s=br.readLine();
    System.out.println(s);
      

  11.   


    通常都是这样将字节流包装起来成为字符流的,虽然scanner也很好用