1. 程式人生 > >sqlite3命令列檢視中文亂碼問題解決

sqlite3命令列檢視中文亂碼問題解決

SQLite庫包含一個名字叫做sqlite3的命令列,它可以讓使用者手工輸入並執行面向SQLite資料庫的SQL命令。我們通過程式建立的資料庫一般位於/data/data/程式db設定的content類所在的包/databases,在此路徑下執行sqlite3 資料庫名即可進入到SQL命令列模式,進行資料庫操作。

如果不進行設定,採用命令列視窗進行查詢的時候,中文顯示為亂碼。這是因為cmd的預設字符集是gbk,,而sqllite採用的預設編碼為utf-8

如果解決這個問題呢,有以下兩個辦法

【1】命令設定法:

(1)退出dos 或者重新開啟在CMD視窗,輸入:

  1. chcp 65001  

 然後回車確定 
注意 65001 是Unicode (UTF-8) 65001 的編碼設定,Chinese Simplified (GB2312) 的設定為936 
(2)在命令列標題欄上點選右鍵,選擇【屬性】 -【字型】,將字型修改為【Lucida Console】 確定.選擇當前視窗有效或者應用於所有視窗 
【2】登錄檔設定法:

(1)開啟登錄檔編輯器(regedit),展開到以下位置
HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe
將CodePage項修改為十進位制值
437(英語),
65001(utf-8),
936(GBK)。
這個會使你開啟cmd之後的字符集就會為修改之後的。而利用chcp命令更改的字符集,在新開啟cmd視窗後會變為預設值。

(2)在命令列標題欄上點選右鍵,選擇【屬性】 -【字型】,將字型修改為【Lucida Console】 確定.選擇當前視窗有效或者應用於所有視窗 

補充chcp命令的用法:

  1. chcp  作用:切換字元格式  
  2. chcp 65001   #換成utf-8內碼表  
  3. chcp 936       #換成預設的gbk  
  4. chcp 437       #美國英語   
  5. 一般預設為gbk,