我有一个SQLite的数据库!
我读取数据库表里的某一字段的值,我在SQLite写SQL语句
读出来的结果是正确的,是中文。
但是到了C#里,读取出来的就是乱码!并且我不知道这个乱码是什么编码!SQLiteConnection sqlite_conn;
sqlite_conn = new SQLiteConnection("Data Source=SQLiteDB.db");sqlite_conn.Open();
try
{
SQLiteDataAdapter sda = new SQLiteDataAdapter("SELECT XLMC FROM line", sqlite_conn);
DataSet ds = new DataSet("ds");
sda.Fill(ds); //就在这步出错!读出来的内容是乱码!
string selectData=ds.GetXml();
//读出来的乱码内容如下
//<ds>
//<Table>
// <XLMC>������</XLMC>
//</Table>
//</ds>
}
catch (System.Data.SQLite.SQLiteException e)
{
throw new Exception(e.Message);
}就那个<XLMC>������</XLMC>里面的������是几个中文字。
想问这是为什么!我怎么在程序里改,让它正确显示中文字!请各位师哥代码明示!小妹在这里不胜感激!
我读取数据库表里的某一字段的值,我在SQLite写SQL语句
读出来的结果是正确的,是中文。
但是到了C#里,读取出来的就是乱码!并且我不知道这个乱码是什么编码!SQLiteConnection sqlite_conn;
sqlite_conn = new SQLiteConnection("Data Source=SQLiteDB.db");sqlite_conn.Open();
try
{
SQLiteDataAdapter sda = new SQLiteDataAdapter("SELECT XLMC FROM line", sqlite_conn);
DataSet ds = new DataSet("ds");
sda.Fill(ds); //就在这步出错!读出来的内容是乱码!
string selectData=ds.GetXml();
//读出来的乱码内容如下
//<ds>
//<Table>
// <XLMC>������</XLMC>
//</Table>
//</ds>
}
catch (System.Data.SQLite.SQLiteException e)
{
throw new Exception(e.Message);
}就那个<XLMC>������</XLMC>里面的������是几个中文字。
想问这是为什么!我怎么在程序里改,让它正确显示中文字!请各位师哥代码明示!小妹在这里不胜感激!
解决方案 »
- C#如何调用C++写的函数啊,急啊,狂散分!!!
- 高手们指导下,这种问题数据库和程序怎样设计以后容易扩展?
- 麻烦前辈们看看c#类的封装,我这么写语法或者应用方面对吗?
- Hashtable的 value是自定义类型时,如何取value?
- CS结构的wsm 仓库管理系统日志是写入文件 还是写入数据库好?
- .Net下ORM框架Nhibernate和Grove谁更适合企业级应用?
- 数据库查询问题
- ef里如何使用继承了实体类的派生类获取数据?
- 一个关于DatagridView的求大神解决
- 请问各位高手!利用socket怎样发送文件?
- 菜:一个数据库的操作问题
- GridView动态绑定模板列值问题,急,救命
//然后执行了什么操作?
Response.Write(selectData);//看看有没有乱码
有乱码啊!打印出来的就是������ 这个啊!
byte[] b = encoding.GetBytes(selectData);
string selectDatautf = encoding.GetString;
Response.Write(selectDatautf);
如果utf8 不行试试gb2312 或者其他编码试试
System.Text.Encoding encoding = System.Text.Encoding("utf-8");
byte[] b = encoding.GetBytes(selectData);
string selectDatautf = encoding.GetString(b);
Response.Write(selectDatautf);
varchar
or
nvarchar
是varchar类型
<?xml version="1.0" encoding="GB2312" ?>
让他自己写成一个xml文件看看是否乱码
改了!改成nvarchar也是错误!
在插入时进行utf-8/gb2312--->ISO-8859-1
在读入时进行ISO-8859-1--->utf-8/gb2312
试试,这样可不可行?