如何将表情符号保存到数据库中?

时间:2015-03-21 06:03:47

标签: ios sqlite emoji

我有一个字符串,它包含这个表情符号,我想将它存储到sqlite数据库中,这个字符串来自服务器,字符串可以是组合,只有表情符号,表情符号+文本,只有文本。如何处理和存储我将从服务器获取的每个字符串。

我已经编码,存储/检索数据库中的文本及其工作正常。但是当我在文本中添加表情符号时,它会改变输出,而不是表情符号,它会向我展示一些像这样的随机字符,üÜé。

如何处理这种情况?

2 个答案:

答案 0 :(得分:3)

根据answer

  

SQLite始终将文本数据存储为Unicode字符串。

以前我正在重温这样的文字,

NSString *text = [NSString stringWithFormat:@"%s",sqlite3_column_text(statement, 0)];

我把它改成了这个,

NSString *text = [NSString stringWithUTF8String:(const char *)sqlite3_column_text(statement, 0)];

现在工作正常。

答案 1 :(得分:1)

您可以使用utfstring向服务器发送表情符号,并在文本字段中显示表情符号,您可以在viewdidload中将该字符串更改为nonlossyasciistringencoding。这样您就可以显示表情符号。