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