问答详情
源自:4-4 字节流之数据输入输出流

运行出来结果有问题!!!

http://img.mukewang.com/5785e5fd00013f4805120346.jpg

源程序:

http://img.mukewang.com/5785e6cf0001e69105310435.jpg

提问者:慕粉3170877 2016-07-13 15:00

个回答

  • 慕粉3434120
    2016-07-13 16:23:46
    已采纳

    在DataOutputStreamDemo这个类里,查看 dos.writeUTF("中国");是否是writeUTF格式的;

    package imooc_File_IO_Demo;

    import java.io.DataOutputStream;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;

    public class DataOutputStreamDemo {

        public static void main(String[] args) throws IOException {
            // TODO Auto-generated method stub
            String file="demo/dos.dat";
            DataOutputStream dos =new DataOutputStream(
                    new FileOutputStream(file));
            dos.writeInt(10);
            dos.writeInt(-10);
            dos.writeLong(10l);
            dos.writeDouble(3.1415);
            //使用utf-8编码方法写出
            dos.writeUTF("中国");
            dos.close();
            IOUtil.printHex("demo/dos.dat");
        }

    }

  • 慕粉3170877
    2016-07-14 09:53:53

    我知道我错0在哪里了,dos.writeInt(-10);这一句写成了dos.write(-10);最后导致读出时 出现错误!其中dos.write(-10)只是写出了低八节