创建一个4字节的Char

Create a 4 byte Char?

本文关键字:字节 Char 一个 创建      更新时间:2023-10-16

我想从文件中提取字符数据,它必须可以直接转换为4字节的int。有人知道如何将1字节的char转换为4个字节的char吗?

背景:

我正在从PDF文件中提取流数据。该数据仅以LZW编码进行编码。在提取数据时,如果我使用char(这是在解码部分之前),则数据将提供的最大整数值为255,原因很明显(1字节char,最大256)。如果我可以直接将数据提取成一个整数,而不需要中间字符来捕获数据(就像下面的例子),它可能会克服这个问题,并显示超过255的正确数值(类似于LZW压缩数据)。

基本上我希望能够做到这一点。

char FourBiteChar; // I can't use the char data type, not sure how else to do this?
int MyInteger;
while (input >> FourBiteChar)
{
    MyInteger = FourBiteChar;
    MyVector.push_back(MyInteger);
}

您可能正在寻找std::stringsteam

std::string tempstr;
int MyInteger;
while (getline(input, tempstr))
{
    std::stringstream tempss(tempstr);
    tempss >> MyInteger;
}

至于您的文件不是ASCII,而是二进制(pdf),您可能需要检查以下答案:从PDF 等二进制文件中读取文本

C++读取PDF文件

有没有一个C++库可以从PDF文件中提取文本,比如PDFBox for Java?