如何以1和0的字符串序列读取二进制文件?

罗马

我创建了一个霍夫曼编码算法,然后我编写了二进制代码String并使用FileOutputStream将其放入二进制文件中DataOutputStream

但是现在我无法理解如何阅读它?我需要从二进制文件中获取 1 和 0 序列。

没有像这样.readString()方法DataInputStream

try{
    FileChooser fileChooser = new FileChooser();
    fileChooser.getExtensionFilters().add(new FileChooser.ExtensionFilter("Binary", "*.bin"));
    FileOutputStream fileOutputStream = new FileOutputStream(fileChooser.showSaveDialog(window));
    DataOutputStream outputStream = new DataOutputStream(fileOutputStream);
    outputStream.writeChars(Main.string_ready_encode);
}catch (IOException e){
    e.printStackTrace();
}

Main.string_ready_encode 包含就绪序列

神经元

您编写代码的问题在于您没有指定文件格式。我们现在只能读取文件,如果我们知道它有多少字节。如果您知道这一点,您可以通过执行以下操作来阅读它:

try (DataInputStream stream = new DataInputStream(new FileInputStream(f))) {
    byte[] bytes = new byte[NUMBER_OF_BYTES];
    stream.read(bytes);
    String content = new String(bytes);
    System.out.println(content);
} catch (IOException e) {
    e.printStackTrace();
}

但我实际上建议你用一些已知的文件格式重写你的文件,如下所示:

try (Writer writer = new OutputStreamWriter(new FileOutputStream(f), Charsets.UTF_8)) {
    writer.write(Main.stringReadyEncode, 0, Main.stringReadyEncode.length());
} catch (IOException x) {
    e.printStackTrace();
}

并像阅读任何其他文件一样阅读它:

try (BufferedReader r = Files.newBufferedReader(f.toPath(), Charsets.UTF_8)) {
    String line;
    while((line = r.readLine()) != null) {
        // do whatever you want with line
        System.out.println(line);
    }
} catch (IOException e) {
    e.printStackTrace();
}

只需确保替换Charsets.UTF_8为您在写入文件时使用的任何编码。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在MATLAB中读取字符串和整数并将其写入二进制文件

来自分类Dev

读取二进制文件中的字符串C ++

来自分类Dev

将二进制文件读取为字符串,但类型混合

来自分类Dev

在C ++中将二进制字符串输出到二进制文件

来自分类Dev

如何从二进制文件读取字符串/数组和int in c?

来自分类Dev

如何从C#的BinaryWriter创建的二进制文件中读取php中的字符串

来自分类Dev

需要将二进制形式的1和0的字符串转换为十进制数

来自分类Dev

如何从二进制文件读取字符串?

来自分类Dev

如何从相同的自定义编码二进制文件中定义二进制(1和0)序列以构成汇编语言?

来自分类Dev

如何从vb.net中的二进制文件读取vb6定长字符串

来自分类Dev

从C中的二进制文件读取字符串时发生访问冲突

来自分类Dev

如何以二进制格式打开文件。(1和0)

来自分类Dev

如何从Java中的标准输入读取python二进制字符串

来自分类Dev

无法将1和0的字符串写入二进制文件,C ++

来自分类Dev

c ++使用fstream从二进制文件读取字符串

来自分类Dev

从二进制文件读取以null结尾的字符串C ++

来自分类Dev

确保使用二进制字符串收敛到0,而不是-1

来自分类Dev

将二进制文件读取为字符串,但类型混合

来自分类Dev

如何从二进制文件中读取以nul结尾的字符串

来自分类Dev

如何从C#的BinaryWriter创建的二进制文件中读取php中的字符串

来自分类Dev

替换二进制文件中的字符串

来自分类Dev

将二进制字符串(ASCII)转换为二进制文件

来自分类Dev

如何在 Python 中读取二进制字符串

来自分类Dev

C:将字符数组(包含'1'和'0')写入文件中的二进制文件

来自分类Dev

二进制和 Unicode 字符串

来自分类Dev

关闭程序后如何从二进制文件中读取字符串

来自分类Dev

将从二进制文件读取的字符串转换为整数

来自分类Dev

将 0 和 1 的字符串转换为它的二进制等效 python

来自分类Dev

将大二进制字符串写入二进制文件

Related 相关文章

  1. 1

    在MATLAB中读取字符串和整数并将其写入二进制文件

  2. 2

    读取二进制文件中的字符串C ++

  3. 3

    将二进制文件读取为字符串,但类型混合

  4. 4

    在C ++中将二进制字符串输出到二进制文件

  5. 5

    如何从二进制文件读取字符串/数组和int in c?

  6. 6

    如何从C#的BinaryWriter创建的二进制文件中读取php中的字符串

  7. 7

    需要将二进制形式的1和0的字符串转换为十进制数

  8. 8

    如何从二进制文件读取字符串?

  9. 9

    如何从相同的自定义编码二进制文件中定义二进制(1和0)序列以构成汇编语言?

  10. 10

    如何从vb.net中的二进制文件读取vb6定长字符串

  11. 11

    从C中的二进制文件读取字符串时发生访问冲突

  12. 12

    如何以二进制格式打开文件。(1和0)

  13. 13

    如何从Java中的标准输入读取python二进制字符串

  14. 14

    无法将1和0的字符串写入二进制文件,C ++

  15. 15

    c ++使用fstream从二进制文件读取字符串

  16. 16

    从二进制文件读取以null结尾的字符串C ++

  17. 17

    确保使用二进制字符串收敛到0,而不是-1

  18. 18

    将二进制文件读取为字符串,但类型混合

  19. 19

    如何从二进制文件中读取以nul结尾的字符串

  20. 20

    如何从C#的BinaryWriter创建的二进制文件中读取php中的字符串

  21. 21

    替换二进制文件中的字符串

  22. 22

    将二进制字符串(ASCII)转换为二进制文件

  23. 23

    如何在 Python 中读取二进制字符串

  24. 24

    C:将字符数组(包含'1'和'0')写入文件中的二进制文件

  25. 25

    二进制和 Unicode 字符串

  26. 26

    关闭程序后如何从二进制文件中读取字符串

  27. 27

    将从二进制文件读取的字符串转换为整数

  28. 28

    将 0 和 1 的字符串转换为它的二进制等效 python

  29. 29

    将大二进制字符串写入二进制文件

热门标签

归档