当前位置: 代码迷 >> J2SE >> DataOutputStream 有关问题
  详细解决方案

DataOutputStream 有关问题

热度:325   发布时间:2016-04-24 12:12:16.0
DataOutputStream 问题?
File file=new File("f://file.txt");
  try {
  FileOutputStream fos=new FileOutputStream(file);
  DataOutputStream dos=new DataOutputStream(fos);
  int n=123;
  int i=1;
  /* for(i=0;i<=100;i++){
  dos.writeDouble(Math.random());
  dos.writeChars("\n");
  }*/
  dos.writeInt(n);
  dos.flush();
  dos.close();
  } catch (FileNotFoundException e) {
  // TODO Auto-generated catch block
  e.printStackTrace();
  } catch (IOException e) {
  // TODO Auto-generated catch block
  e.printStackTrace();
  }
为什么写入的 {,而不是123 ???

------解决方案--------------------
你写入OutputStream的值是一个int值123,用文本文件打开会换成123值对应的 字符编码 输出的就是{
如果你想要存储后打开文本文件显示123,那么你直接存入字符串"123"
Java code
import java.io.*;public class DataOutputStreamDemo {    public static void main(String[] args) {        File file=new File("f://file.txt");        try {            FileOutputStream fos=new FileOutputStream(file);            DataOutputStream dos=new DataOutputStream(fos);            int n=123;            int i=1;            /* for(i=0;i<=100;i++){            dos.writeDouble(Math.random());            dos.writeChars("\n");            }*///            dos.writeInt(n);            dos.writeBytes("123");            dos.flush();            dos.close();        } catch (FileNotFoundException e) {            // TODO Auto-generated catch block            e.printStackTrace();        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }    }}