gpt4 book ai didi

Java:以最有效的内存方式存储位

转载 作者:搜寻专家 更新时间:2023-10-31 20:34:44 26 4
gpt4 key购买 nike

我已经编写了一个算法来实现用于压缩文本文件的霍夫曼编码。它基本上将字符串作为输入并生成一串位作为输出。但是,我在存储这个二进制数据时遇到了麻烦,因为它被存储为一个字符串,其中每个位都是一个字符并且占用 2 个字节的内存用于存储。最终结果,输出文件大于输入,使整个程序毫无值(value)。我应该如何存储此二进制输出,以便每一位只占用一位内存进行存储?附言。我尝试过使用 BitSet,但这根本没有改变输出的大小

最佳答案

BitSet 中得到结果后,您可以调用

BitSet.toByteArray() 将数据保存到文件中,即:

FileUtils.writeByteArrayToFile(new File(...), bitSet.toByteArray());

BitSet.valueOf(byte[]) 从文件中读取数据:

BitSet bitSet = new BitSet(FileUtils.readFileToByteArray(new File(...)));

关于Java:以最有效的内存方式存储位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19502346/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com