gpt4 book ai didi

Java 压缩 .txt 文件

转载 作者:行者123 更新时间:2023-11-30 10:19:49 25 4
gpt4 key购买 nike

我目前正在尝试编写一个程序,该程序读取以位或 0 和 1 编写的压缩文件,并将它们转换为 0 和 1 的字符串。

学校提供了一个类和方法来读取 1 位并将其转换为字符 char。所以要读取一位并将其转换为字符,我需要做的就是输入我的代码:

char oneBit = inputFile.readBit();

在我的主要方法中。

如何让我的程序读取压缩文件中的每一位并将它们转换为字符?使用 .readBit 方法?我如何将所有字符 0 和 1 转换为 0 和 1 的字符串?

读取位方法:

public char readBit() {
char c = 0;

if (bitsRead == 8)
try {
if (in.available() > 0) { // We have not reached the end of the
// file
buffer = (char) in.read();
bitsRead = 0;
} else
return 0;
} catch (IOException e) {
System.out.println("Error reading from file ");
System.exit(0); // Terminate the program
}

// return next bit from the buffer; bit is converted first to char
if ((buffer & 128) == 0)
c = '0';
else
c = '1';
buffer = (char) (buffer << 1);
++bitsRead;

return c;
}

其中 in 是输入文件。

最佳答案

尝试使用这个 resource

实现示例。

public class BitAnswer {

final static int RADIX = 10;

public static void main(String[] args) {
BitInputStream bis = new BitInputStream("<file_name>");
int result = bis.readBit();
while( result != -1 ) {
System.out.print(Character.forDigit(result, RADIX));
result = bis.readBit();
}

System.out.println("\nAll bits read!");
}
}

关于Java 压缩 .txt 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48433425/

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