我希望我的wxWidgets程序使用unicode,我不确定我做得对。
我有wxTextCtrl,用户输入文本并将文本保存到wxString变量中,然后插入到sqlite3 db,当我插入它时,我使用ToUTF8();
,然后当我想在wxTextCtrl中显示它时,我从数据库中查询它然后使用wxString::FromUTF8(var_from_db);
我不确定这是使用 unicode 和 wxWidgets 的最佳和最有效的方法,我做得对吗?有没有更好的方法?谢谢。
SQLite具有同时使用UTF-16和UTF-8的API,但后者是首选,所以我会说你正在做正确的事情。
但要确定这一点,你真的应该有单元测试来验证在数据库中保存字符串并读回它们会返回相同的内容。然后你不必怀疑它是否有效,但你会真正知道它。
很难知道你所说的"做对了"是什么意思。
最主要的是:它有效吗?
假设它工作正常,那么您将不得不决定为什么要关心它是使用 UTF16 还是 UTF8。 你关心性能吗? 通过互联网进行通信?