【发布时间】:2018-04-14 14:25:21
【问题描述】:
我正在用 java 开发一个霍夫曼压缩和解压缩应用程序。到目前为止,我已经完成了编码和解码工作。它将大输入文本转换为编码的二进制文本。这是一个 1 和 0 的字符串。例如:
String originaltext = "您好,我正在尝试编写一个霍夫曼应用程序并且..."
String encodedtext = "1100001110001111011010100110100110...." 这是一个很长的字符串。
现在我想将字符串作为二进制文件保存到文件中以减小大小。但是当我尝试这样做时,大小会比原始文本大小大得多。相反,我需要小于原始文件大小的大小。将编码文本保存到文件后,我需要重新读取二进制文件并将其转换为编码文本字符串,以使用我的 huffmantree 方法对其进行反转换。
如何将二进制字符串保存到比原始大小更小的二进制文件中?以及如何读入文件并将二进制代码转换为编码字符串文本?
【问题讨论】:
-
"但是当我尝试这样做时,大小会比原始文本大小大得多。" - 您是在编写表示的二进制文件还是实际的
String? -
我猜是实际的字符串,如何将其转换为二进制字符串?
标签: java huffman-code