sqlite3命令列檢視中文亂碼問題解決
阿新 • • 發佈:2019-01-22
SQLite庫包含一個名字叫做sqlite3的命令列,它可以讓使用者手工輸入並執行面向SQLite資料庫的SQL命令。我們通過程式建立的資料庫一般位於/data/data/程式db設定的content類所在的包/databases,在此路徑下執行sqlite3 資料庫名即可進入到SQL命令列模式,進行資料庫操作。
如果不進行設定,採用命令列視窗進行查詢的時候,中文顯示為亂碼。這是因為cmd的預設字符集是gbk,,而sqllite採用的預設編碼為utf-8
如果解決這個問題呢,有以下兩個辦法
【1】命令設定法:
(1)退出dos 或者重新開啟在CMD視窗,輸入:
- 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命令的用法:
-
chcp 作用:切換字元格式
- chcp 65001 #換成utf-8內碼表
- chcp 936 #換成預設的gbk
- chcp 437 #美國英語
- 一般預設為gbk,