标题:【提问】求救!数据的处理问题
作者:daviescai
日期:2006-02-23 19:07
内容:
char dbuf[] = "测试字符串";
char* tpstr = dbuf;
QString csdata = QString::fromLocal8Bit( (char*)tpstr, -1 );//显示csdata正确
unsigned char* pstr = (unsigned char*)csdata.data();//取数据的指针
sedes( (unsigned char*)pstr, strlen( (char*)pstr ) );//加密
sedes( (unsigned char*)pstr, strlen((char*)pstr) );//解密
QString mmn = QString::fromLocal8Bit( (char*)pstr, -1 );//显示mmn数据错误,去掉加、解密过程也一样显示错误的据数,初步怀疑是错误是出在:
unsigned char* pstr = (unsigned char*)csdata.data();
这一行上,可是不知道什么改?
如果把这一行数据改为:
unsigned char* pstr = (unsigned char*)csdata.unicode():会显示不同的错误数据
请大侠帮帮忙,谢谢!
#1 [XChinux 02-23 19:17]
看看下面的可否,注意红色部分
char dbuf[] = "测试字符串";
char* tpstr = dbuf;
QString csdata = QString::fromLocal8Bit( (char*)tpstr, -1 ); //显示csdata正确
unsigned char* pstr = (unsigned char*)csdata.toLocal8Bit.data();//取数据的指针
sedes( (unsigned char*)pstr, strlen( (char*)pstr ) );//加密
sedes( (unsigned char*)pstr, strlen((char*)pstr) );//解密
QString mmn = QString::fromLocal8Bit( (char*)pstr, -1 ); //显示mmn数据错误,去掉加、解密过程也一样显
#2 [daviescai 02-23 19:18]
谢谢!我试试
#3 [daviescai 02-23 19:58]
出来的数据还是不正确