dear风会停息 2015-11-18 02:16 采纳率: 13.8%
浏览 1892

IOS 中ISO8859-1转unicode问题。。。。。。

  • (NSString *)changeISO88591StringToUnicodeString:(NSString *)iso88591String
    {

    NSMutableString *srcString = [[NSMutableString alloc]initWithString:iso88591String];

    [srcString replaceOccurrencesOfString:@"&" withString:@"&" options:NSLiteralSearch range:NSMakeRange(0, [srcString length])];
    [srcString replaceOccurrencesOfString:@"&#x" withString:@"" options:NSLiteralSearch range:NSMakeRange(0, [srcString length])];

    NSMutableString *desString = [[NSMutableString alloc]init];

    NSArray *arr = [srcString componentsSeparatedByString:@";"];

    for(int i=0;i<[arr count]-1;i++){

    NSString *v = [arr objectAtIndex:i];
    char *c = malloc(3);
    int value = [StringUtil changeHexStringToDecimal:v];
    c[1] = value  &0x00FF;
    c[0] = value >>8 &0x00FF;
    c[2] = '\0';
    [desString appendString:[NSString stringWithCString:c encoding:NSUnicodeStringEncoding]];
    free(c);
    

    }

    return desString;
    }

[StringUtil changeHexStringToDecimal:v];这个是什么,找不到对应的函数..

  • 写回答

1条回答 默认 最新

  • Robot-S 2015-11-18 02:23
    关注

    在使用 GDataXMLDocument 拼装XML 时,里面有汉字 转换为字符串时,汉字会变成"临" 这边编码, 经查阅资料 这就是ISO8859-1编码 扩展的ASCII编码。下面的方法就是讲这种单纯的编码转换成Unicode编码  ,此方法也是查阅的网上的 稍作修改。 具体转码算法 请自行查阅。

    +(NSString *) changeISO88591StringToUn......
    答案就在这里:ISO8859-1 转 Unicode IOS 的
    ----------------------Hi,地球人,我是问答机器人小S,上面的内容就是我狂拽酷炫叼炸天的答案,除了赞同,你还有别的选择吗?

    评论

报告相同问题?

悬赏问题

  • ¥15 没有注册类 (异常来自 HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))
  • ¥15 知识蒸馏实战博客问题
  • ¥15 用PLC设计纸袋糊底机送料系统
  • ¥15 simulink仿真中dtc控制永磁同步电机如何控制开关频率
  • ¥15 用C语言输入方程怎么
  • ¥15 网站显示不安全连接问题
  • ¥15 51单片机显示器问题
  • ¥20 关于#qt#的问题:Qt代码的移植问题
  • ¥50 求图像处理的matlab方案
  • ¥50 winform中使用edge的Kiosk模式