以下是utf-8格式的示例csv文件,可以在win7的记事本中打开,中文字符显示正确,请下载.
http://pan.baidu.com/s/1sj0ia4H
打开cmd,然后设置chcp 650001.
C:\Users\pengsir>sqlite3 e:\\test.db
SQLite version 3.8.4.3 2014-04-03 16:53:12
Enter ".help" for usage hints.
sqlite> create table ipo(name TEXT,method TEXT);
sqlite> .separator ","
sqlite> .import "e:\\tmp.csv" ipo
sqlite> select * from ipo;
000001,公开招募
000002,申请表抽ç¾é™é¢è®¤è´
000004,定å‘å‘行
000005,银行储蓄å˜å•æ–¹å¼
000006,申请表抽ç¾é™é¢è®¤è´
000007,自办å‘行
000008,自办å‘行
000009,定å‘å‘行
000010,定å‘å‘行
000011,申请表抽ç¾ç‰é¢è®¤è´
sqlite>
Run Code Online (Sandbox Code Playgroud)
为什么相同的sqlite命令可以在sqlitemanager中正确显示?
如何设置在sqlite控制台中显示中文字符?
在pysqlite3中,它可以在python控制台中正确显示.
>>> import sqlite3
>>> con=sqlite3.connect("e:\\test.db")
>>> cur=con.cursor()
>>> cur.execute("select * from ipo;")
<sqlite3.Cursor object at 0x01751720>
>>> print(cur.fetchall())
[('000001', '????'), ('000002', '?????????'), ('000004', '????'
), ('000005', '????????'), ('000006', '?????????'), ('000007',
'????'), ('000008', '????'), ('000009', '????'), ('000010', '???
?'), ('000011', '?????????')]
>>>
Run Code Online (Sandbox Code Playgroud)
此问题隐藏了命令提示符窗口如何 显示字符,而不是sqlite3如何 打印输出;
作为一个简单的演示,我们绝对排除 sqlite3
并通过type命令查看文件:
让我们看看在其他不同的操作系统中会发生什么,例如在OSX中:
">
ISO-8859-1
对应(Windows latino 1),windows等效代码页设置:
chcp 819
">
UTF8
对应Unicode(UTF-8),windows等效代码页设置:
chcp 65001
Windows中也会出现相同的行为:使用命令chcp
检查和/或设置当前的代码页
">
注意:这是意大利Windows XP的屏幕截图,您可以看到仍然没有运气!:-(,在这种情况下,原因在于command prompt properties
我的"Windows XP"框中可配置的可用字体泄漏
:
我希望这不是你的"Windows 7"盒子的情况(但如果是的话,请留下评论,以便在答案的这一部分更具体)...当问题切换到"可用字体"时,将安装其他语言支持,仍然需要通过以下方式强制UTF-8 chcp 65001
:
">
按照我在ITA WinXP SP2上获得结果的步骤列表,如上面的屏幕截图所示:
讲座链接:在您的计算机上安装东亚语言文件
总之,这两个选项都已经过检查
在"高级标签"中,我选择了中文:
记事本对于某些字体检查很有用,例如打开temp.csv并使用字体但要注意:在命令窗口中可以使用字体的必要条件
归档时间: |
|
查看次数: |
2605 次 |
最近记录: |