- 操作系统:Windows 8.1
- 微软 SQL Server 2008 R2
- Qt 5.2
- 数据库驱动程序“QODBC”
我对元音变音有点问题。
我用列 NVARCHAR(35) 创建表并用 N'1ö2' 填充表。当我从 SQL Management Studio 中选择某些内容时,我会看到变音符号 ö。
在Qt中我使用例如thisqDebug() << “name“ << aQuery->value(„name“).toString();
但我得到name "1?2"
即使我循环可用的编解码器 (QTextCodec::availableCodecs();) 我也没有得到有效的 1ö2 字符串。
QByteArray ba = aQuery->value(„name").toByteArray();
qDebug() << "hex" << ba.toHex() << "str" << QString(ba) << "count" << ba.count();
输出:
hex "31efbfbd32" str "1?2" count 5
31 是 1
32 是 2
efbfbd 是 unicode 吗?(替换字符)
所以我的问题很简单——我做错了什么?;-)
谢谢, 马蒂亚斯