由于刚刚开始接触Objective C在处理中文的时候,绕了好大一个圈子.
在使用sqlite读取的字符的时候,默认是char *的. 但是在我的程序中要使用的是NSString,这就涉及到了一个转换.
由于看的死书,按照书上和网上写的,在转换时使用了 NSASCIIStringEncoding,导致了转换后的中文字符串乱码.
在绕了N个圈子之后,终于发现,其实自己用错了encoding了... 使用NSUTF8StringEncoding,即可.
char *Message = (char *)sqlite3_column_text(statement,2); //从sqlite读取的char 型字符串 NSString *nsMessage= [[NSStringalloc] initWithCString:Message encoding:NSUTF8StringEncoding]; //转换