A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

小杨

初级黑马

  • 黑马币:

  • 帖子:

  • 精华:

© 小杨 初级黑马   /  2012-6-6 17:27  /  1121 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. DataInputStream in5 = new DataInputStream(new BufferedInputStream(new FileInputStream("Data.txt")));
  2.                 System.out.println(in5.readLine());
  3.                 System.out.println(in5.readDouble());
复制代码
这段代码里DataInputStream.readLine过时,在功能不变的情况下怎么改?

如果用BufferedReader,它没有readDouble类似的方法呀?

评分

参与人数 1技术分 +1 收起 理由
袁錦泰 + 1

查看全部评分

1 个回复

倒序浏览
自己写个DataInputStream的代理类呗
  1. class DataInputStreamProxy implements DataInput {
  2.         private DataInputStream dis;
  3.         private BufferedReader br;

  4.         public DataInputStreamProxy(DataInputStream dis) {
  5.                 this.dis = dis;
  6.                 br = new BufferedReader(new InputStreamReader(new BufferedInputStream(dis)));
  7.         }

  8.         @Override
  9.         public void readFully(byte[] b) throws IOException {
  10.                 dis.readFully(b);
  11.         }

  12.         @Override
  13.         public void readFully(byte[] b, int off, int len) throws IOException {
  14.                 dis.readFully(b, off, len);
  15.         }

  16.         @Override
  17.         public int skipBytes(int n) throws IOException {
  18.                 return dis.skipBytes(n);
  19.         }

  20.         @Override
  21.         public boolean readBoolean() throws IOException {
  22.                 return dis.readBoolean();
  23.         }

  24.         @Override
  25.         public byte readByte() throws IOException {
  26.                 return dis.readByte();
  27.         }

  28.         @Override
  29.         public int readUnsignedByte() throws IOException {
  30.                 return dis.readUnsignedByte();
  31.         }

  32.         @Override
  33.         public short readShort() throws IOException {
  34.                 return dis.readShort();
  35.         }

  36.         @Override
  37.         public int readUnsignedShort() throws IOException {
  38.                 return dis.readUnsignedShort();
  39.         }

  40.         @Override
  41.         public char readChar() throws IOException {
  42.                 return dis.readChar();
  43.         }

  44.         @Override
  45.         public int readInt() throws IOException {
  46.                 return dis.readInt();
  47.         }

  48.         @Override
  49.         public long readLong() throws IOException {
  50.                 return dis.readLong();
  51.         }

  52.         @Override
  53.         public float readFloat() throws IOException {
  54.                 return dis.readFloat();
  55.         }

  56.         @Override
  57.         public double readDouble() throws IOException {
  58.                 return dis.readDouble();
  59.         }

  60.         @Override
  61.         public String readLine() throws IOException {
  62.                 return br.readLine();
  63.         }

  64.         @Override
  65.         public String readUTF() throws IOException {
  66.                 return null;
  67.         }
  68. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
袁錦泰 + 1 很给力!

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马