0 objective-c utf-8 char nsstring ios
这是我的chars返回的数组:
char *methodChars = (char *) sqlite3_column_text(statement, 3);
Run Code Online (Sandbox Code Playgroud)
(char*)methodChars = 0x090f5e00"开始在一大锅开水中煮意大利面.\ xa0同时,用油和热量喷洒大锅.\ xa0\xa0加入洋葱和芹菜,用中火煮3分钟或搅拌均匀.\ xa0将玉米粒搅拌均匀.\ xa0将玉米粉放入一个小碗中,逐渐加入80毫升(1/3杯)牛奶,搅拌至均匀.\ xa0将剩余的牛奶和原料加入锅中然后逐渐加入玉米粉混合物,不断搅拌.\ xa0继续搅拌,直到酱汁沸腾并变稠.\ xa0取出加热并在奶酪中搅拌直至融化.\ xa0当意大利面变硬时,沥干并加入金枪鱼至pan.\ xa0搅拌结合,立即服务."
继承我转换它的地方,这就是我得到的:
NSString *method = [[NSString alloc] initWithUTF8String:methodChars];
Run Code Online (Sandbox Code Playgroud)
这是我从方法得到的:
零
有人可以解释为什么,以及我如何解决这个问题?
此代码适用于某些情况,当methodChars不包含\xa0
而只是有空格时.谁能解释为什么这可能是一个原因?
您的字符串不是以UTF-8编码的:它包含字节\xa0
.如果该字符串应该包含U + 00A0非破坏空格字符,则它应该被编码为\xc2\xa0
.
您可以使用编码创建字符串,其中\xa0
映射到有效字符,例如:
NSString *method = [[NSString alloc] initWithCString:methodChars encoding:NSISOLatin1StringEncoding];
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
211 次 |
最近记录: |