【发布时间】:2015-11-18 01:07:47
【问题描述】:
我正在从 xml 文件中读取 base64 字符串。写入 xml 文件的 base64 字符串是从 QTc++ 程序生成的。我有解析 xml 文件并能够从 base64 字符串生成数据的 Qtc++ 程序。我想对 python 做同样的事情,我无法弄清楚如何将 base64 读取为类似于 QTc++ 的字节数组。 我解析 xml 并解码数据文件的 Qt c++ 代码如下所示。为简单起见,我只包含编码的 base64 字符串的一部分。
datastring='AAAAAAAAAAA/YGJN0vGp/D9wYk3S8an8P3iTdLxqfvo/'
QByteArray xByteArray =QByteArray::fromBase64('datastring')
QDataStream xInStream(xByteArray);
while (!xInStream.atEnd())
{
double d;
xInStream >> d;
qDebug()<<d;
pPlotCurve->addXAxisValue(d);
}
我能够使用 QTc++ 解码数据,输出看起来像 [0.0, 0.002 0.004,......]
我正在尝试在 python 中解码相同的 base64 字符串,我得到了乱码。我的 Python 代码是
import base64
# I parse the xml file and retrieve the data below
datastring = 'AAAAAAAAAAA/YGJN0vGp/D9wYk3S8an8P3iTdLxqfvo/'
out = base64.b64decode(datastring)
print out
当我解码上面的代码时,我得到了加扰的数据,我怎样才能像上面的 QTc++ 程序一样执行相同的操作并获得相同的输出。我尝试了很多方法,但没有任何效果。
【问题讨论】:
-
抱歉应该是数据串