是不是用的write(int i)方法,这个方法是将单字符输出吧

解决方案 »

  1.   

    //以下是我写入文件时的代码!
    import java.io.*;public class WriteData
    {
    public static void main(String args[]) throws IOException
    {
    int dataSize=10;
    double b;
    FileOutputStream fout=new FileOutputStream("data.out");
    BufferedOutputStream bout=new BufferedOutputStream(fout);
    DataOutputStream dout=new DataOutputStream(bout);

    dataSize=10;
    for (int i=0;i<dataSize;i++)
    {
    dout.writeInt(i);
    }
    dout.flush();
    fout.close();
    }
    }
      

  2.   

    我想这是因为记事本把它读出来的时候把整数当成所对应的ASCII字符来读造成的,如果修改为:dataSize=58;
    for (int i=48;i<dataSize;i++)
    你应该就可以看到0-9这十个数字了
      

  3.   

    try{
    RandomAccessFile rf=new RandomAccessFile("e:\\my.txt","rw");
    //这里把你的数字转换为String str;
    String str="你的数字";
    byte [] b;
    b=str.getBytes();
    rf.write(b);//数字就写入文本文件了。若写中文同样可以
    rf.close();
    }
    catch(Exception e){}
      

  4.   

    to: kengzai(芒果老公) ( ) 信誉:100 
    我想他可能想利用循环来赋值,或者试用DataOutputStream的功能,有没有办法?
      

  5.   

    估计你是以字节的形式写到外部文件里面去的,所以看到的是乱码,试试这样
    PrintWriter out = new PrintWriter( new OutputStreamWriter(new FileOutputStream("data.out")));
    strin="abc";
    out.println(strin);
    out.flush();
      

  6.   

    writeInt是把int的四个字节写入文件,所以你打开是int的二进制表示,占四个字节。平时看到文件里的数字有几位就占几个字节。例如123占三个字节12345占5个,但是把12345用writeInt写入文件就只占四个字节了。要把int以字符的形式写入文件用PrintWriter 类的print方法。