我正在开发一个iphone应用程序,其中我必须使用在sqlite中预先捆绑的丹麦语。我有excelsheet(.csv)格式的丹麦语语言数据,我必须将其导入sqlite数据库。但丹麦语有一些特殊的字符,我无法检索,因为它似乎在excelsheet。您能否建议我如何实现这一目标并使用丹麦语sqlite数据库。
感谢。
答案 0 :(得分:0)
当您要在db中输入值时将它们转换为
$(char *)[str cStringUsingEncoding:NSUTF8StringEncoding]
答案 1 :(得分:0)
这是一些python代码,它创建一个sqlite脚本,根据csv文件的内容创建并插入到表中。它导入一个名为feeds.csv
的文件,这是一个用;
分隔的UTF8文件,用通用新行(U
)打开(这是为了在Mac上读取时支持DOS样式文件) )。
有问题的文件有一个初始行,其中包含列名,这些列填充到data
表中,该表由代码构成。
脚本的输出是一个可以使用命令sqlite foo.db <output
执行的文件。放入.db文件的数据将原生为UTF8。
#!/usr/bin/python
import csv
reader = csv.reader(open("feeds.csv", 'rU'), delimiter=';')
printed_header = None
num_cols = None
for row in reader:
if not printed_header:
num_cols = 0
print "create table data (",
for col in row:
if len(col) > 0:
num_cols += 1
if (num_cols > 1):
print ",",
print "%s varchar" % col,
print ");"
printed_header = True
continue
else:
print "insert into data values (",
pcol = 0
for col in row:
if len(col) > 0:
if pcol > 0:
print ",",
pcol += 1
print "'%s'" % col.replace("'", "''"),
print ");"
答案 2 :(得分:0)
试试这个
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *filePath = [documentsDirectory stringByAppendingPathComponent:CSV_FILE_NAME];
NSFileManager *fm = [NSFileManager defaultManager];
NSData *data=[fm contentsAtPath:filePath];
NSString* newStr = [NSString stringWithUTF8String:[data bytes]];