【问题标题】:Reading a bin file in Java在 Java 中读取 bin 文件
【发布时间】:2013-04-17 13:26:48
【问题描述】:

我知道网站上有一些类似的问题,但他们无法为我提供有用的答案。在Java中逐行读取.bin文件的最佳/最有效方法是什么?应该使用哪些类和方法来打开它并获取数据? Bufferedreader 可以完成这项工作还是仅适用于文本文件?

【问题讨论】:

  • 二进制文件没有行。
  • Java 教程中有一个关于Byte Streams 的部分。

标签: java file filereader


【解决方案1】:

二进制文件没有行,但你必须知道文件的格式才能知道存在什么结构(标题、结构等)并编写解析器。

你可以使用BufferedInputStream,看下面:

【讨论】:

    【解决方案2】:

    应该这样做。

    public byte[] readFromStream(InputStream inputStream) throws Exception
    {
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    DataOutputStream dos = new DataOutputStream(baos);
    byte[] data = new byte[4096];
    int count = inputStream.read(data);
    while(count != -1)
    {
        dos.write(data, 0, count);
        count = inputStream.read(data);
    }
    
    return baos.toByteArray();
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-22
      • 2011-08-06
      • 2023-03-03
      • 1970-01-01
      相关资源
      最近更新 更多