在 Qt 中将 0 和 1 文本文件读取为二进制文件

Read 0 and 1 text file as binary in Qt

我想读取一个包含二进制 0 和 1 的文本文件,考虑这个例子:

textfile.txt:

001001100101
010100011100
100000110001
001111110101
100010110101
111010100100
011011000110

我想以二进制形式读取这个 0 和 1 流,或者读取然后转换它。如果我们考虑第一行“001001100101”,我想将它转换为十进制的 613,然后使用位字段或类似的东西,我检查读取的每个数字的每一位。唯一能做的就是逐行读取然后解析为字符串,然后用“1”或“0”检查每个拆分的字符串并找到实际值。我认为有一个简单的方法可以解决这个问题。

如果你的文件中只有0和1,

你可以使用 stl std::stoi(const string& str, [size_t* idx], [int base])

    string bin_string = "001001100101";
    int number = stoi(bin_string, nullptr, 2);