ivaneeo's blog

          自由的力量,自由的生活。

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            669 Posts :: 0 Stories :: 64 Comments :: 0 Trackbacks
          qt4內置有sqlite插件,可以直接使用sqlite.但是發現插入中文時會有亂碼問題。
          以windows為例,qt4內置編碼為system(GBK).而sqlite內部編碼為unicode.
          如果插入中文首先要轉換為unicode.而從數據庫讀取時則不需要,因為qt會自動偵測編碼,
          實例代碼:
              //插入記錄
              QSqlQuery query;
              QByteArray sql = "insert into person values(1, 'hello', '你好!')";
              QTextCodec *codec = QTextCodec::codecForName("GBK");
              QString string = codec->toUnicode(sql);
              query.exec(string);
              //讀入記錄
              QSqlQuery query("select * from person");
              while (query.next()) {
                 QString string = query.value(2).toString();;
                 QMessageBox::information(0, "infa", string, QMessageBox::Ok);
              }


          posted on 2007-10-20 23:03 ivaneeo 閱讀(2312) 評論(2)  編輯  收藏 所屬分類: qt-革命

          Feedback

          # re: qsqlite4中文亂碼解決[未登錄] 2010-03-26 22:01 董超
          這個在我電腦上怎么還是亂碼,寫進去
          email:scudc@tom.com  回復  更多評論
            

          # re: qsqlite4中文亂碼解決 2011-11-05 10:35 游客
          太感謝樓主,我也碰到這個問題,用樓主的方法解決了  回復  更多評論
            


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 陇南市| 凌源市| 兴化市| 四会市| 上林县| 安远县| 溧阳市| 宁津县| 东莞市| 文昌市| 温泉县| 南皮县| 阿尔山市| 崇义县| 泰安市| 龙游县| 上林县| 莲花县| 镇江市| 五原县| 肥乡县| 江达县| 荔浦县| 徐汇区| 楚雄市| 黎川县| 涿鹿县| 竹山县| 石楼县| 韶关市| 昌平区| 潮安县| 中西区| 沂源县| 扎囊县| 山阴县| 庆元县| 宁乡县| 姚安县| 安康市| 朝阳区|