【发布时间】:2013-08-15 05:34:54
【问题描述】:
我正在尝试从 SQLite 文件中获取信息,当我运行查询时,信息以 ASCII 编码返回。我正在使用下面的代码将返回的信息放入一个字符串中。
[NSString stringWithCString:(char *)sqlite3_column_text(compiledStatement, 2) encoding:NSASCIIStringEncoding];
当我尝试使用 UTF8 编码将返回的信息放入字符串时,它不起作用。以下代码用于当前商店的应用程序中。
[NSString stringWithUTF8String:(char *)sqlite3_column_text(compiledStatement, 2)];
字符串为空。如何转换 SQLite 文件以使其使用 UTF8 编码?商店的当前版本的应用程序使用上面的后一个代码,所以我需要弄清楚如何转换文件,而不是更改应用程序中的代码。
【问题讨论】:
-
我认为如果您将标题更改为“更改 SQLite 编码?”“SQLite 编码问题”或“SQLite 中的编码困难”之类的内容,您会获得更多的点击率,希望能成功!
-
在 sqlite 数据库中创建数据时使用了什么编码?如果它是使用 ASCII 编码编写的,那么您所做的是正确的。
-
@rmaddy App Store 上的当前应用程序尝试使用 UTF8 编码读取数据库。您知道如何转换数据库以使其与 UTF8 兼容吗?
-
@rmaddy 查看我的编辑。以下不起作用:
[NSString stringWithUTF8String:(char *)sqlite3_column_text(compiledStatement, 2)];返回一个空字符串。
标签: ios objective-c database sqlite