前段時間寫資料儲存與恢復用到了sqlite,結果遇到了乙個很讓人糾結的問題,那就是sqlit再對中文進行操作是出項亂碼,寫入是有亂碼,讀出來時也會有亂碼。因為sqlit對應的是utf8編碼,而我們平時的字元傳都是uncoid編碼和ascii編碼,而這有很大的區別,這裡不做解釋,
而sqlit的所有操作都是基於utf8的,這就造成對中文亂碼問題,如何向sqlite中寫入中文,就首先將字元傳轉換成utf8編碼,而當讀取的時候需要將utf8再轉換過來,下面給你兩個方法
//utf-8到gb2312的轉換
char* u2g(const char* utf8)
//gb2312到utf-8的轉換
char* g2u(const char* gb2312)
具體參見
Air 連線 sqlite 中文亂碼
昨晚寫了一些sqlite用法,今天又實際操作遇到的新問題。修改表名 alter table table name rename to new table name 例如 alter table message2 rename to message 備份資料庫 sqlite backup kun.ba...
c 中關於SQLite中文亂碼的解決方法
在使用sqlite的過程中 c 如果建立乙個表,如果sql語句中包含中文字元,就會報錯 如果是從資料庫表中查詢資料,如果資料庫表中的某些欄位為中文,查詢結果也不能正常顯示,出現這種情況的原因是因為sqlite的編碼與工程的編碼不一致造成的。sqlite的編碼預設為utf 8編碼,而vc 工程中所編寫...
解決SQLite資料庫中文亂碼問題
關於sqlite中出現中文亂碼的分析以及解決方案 我們在使用sqlite資料庫時候,可能會發現,向資料庫插入資料時候顯示的是漢字,但通過sqlite讀出來時卻顯示的亂碼,這是因為sqlite資料庫所支援的編碼方式和我們程式中的編碼方式不一樣,sqlite資料庫採用的是utf 8編碼方式,而我們在程式...