竹山一叶

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  390 随笔 :: 0 文章 :: 0 评论 :: 0 引用

SQLite库包含一个名字叫做sqlite3的命令行,它可以让用户手工输入并执行面向SQLite数据库的SQL命令。我们通过程序创建的数据库一般位于/data/data/程序db设置的content类所在的包/databases,在此路径下执行sqlite3 数据库名即可进入到SQL命令行模式,进行数据库操作。

如果不进行设置,采用命令行窗口进行查询的时候,中文显示为乱码。这是因为cmd的默认字符集是gbk,,而sqllite采用的默认编码为utf-8

如果解决这个问题呢,有以下两个办法:


【1】命令设置法:

(1)退出dos 或者重新开启在CMD窗口,输入:

[html] view plain copy
  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命令的用法:

[plain] view plain copy
  1. chcp  作用:切换字符格式  
  2. chcp 65001   #换成utf-8代码页  
  3. chcp 936       #换成默认的gbk  
  4. chcp 437       #美国英语   
  5. 一般默认为gbk





posted on 2017-05-17 13:35  竹山一叶  阅读(...)  评论(...编辑  收藏