java - ios 端如何解码 Unicode
伊谢尔伦
伊谢尔伦 2017-04-17 17:56:14
[Java讨论组]

ios 端如何 进行同样的unicode 解码 转码, 不太懂Java,希望大神贴上ios unicode代码转码解码

public static String string2Unicode(String string) {

 
    StringBuffer unicode = new StringBuffer();
    for (int i = 0; i < string.length(); i++) {
        char c = string.charAt(i);
        unicode.append("\\u" + Integer.toHexString(c));
    }
    String str = unicode.toString();
  
    return str.replaceAll("\\\\","0x");
}

public static String unicode2String(String unicode) {
    
    String str = unicode.replace("0x", "\\");        
    
    StringBuffer string = new StringBuffer();
    String[] hex = str.split("\\\\u");
    for (int i = 1; i < hex.length; i++) {
        int data = Integer.parseInt(hex[i], 16);
        string.append((char) data);
    }
    return string.toString();
}    
伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回复(2)
PHP中文网

如果你是在用 obj c 的话,你可以看看 NSString 的文档,大概就是下面两个方法, string 的编码和解码:

- (nullable instancetype)initWithData:(NSData *)data encoding:(NSStringEncoding)encoding;

- (nullable NSData *)dataUsingEncoding:(NSStringEncoding)encoding;
PHP中文网
  • (NSString )decodeWithUnicode:(NSString )description;
    {
    description = [description stringByReplacingOccurrencesOfString:@"0x" withString:@"\\"];
    NSString *tempstr = [NSString string];
    NSArray *studyy =[description componentsSeparatedByString:@"\\u"];
    for (NSString *temp in studyy) {

       if (temp.length  == 4) {
           tempstr = [tempstr stringByAppendingString:temp];
       }

    }
    tempstr = [tempstr stringByReplacingOccurrencesOfString:@" " withString:@""];

    NSMutableData *commandToSend= [[NSMutableData alloc] init];

    unsigned char whole_byte;

    char byte_chars[3] = {'0','0','0'};

    int i;

    for (i=0; i < [tempstr length]/2; i++) {

       
       byte_chars[0] = [tempstr characterAtIndex:i*2];
       
       byte_chars[1] = [tempstr characterAtIndex:i*2+1];
       
       whole_byte = strtol(byte_chars, NULL, 16);
       
       [commandToSend appendBytes:&whole_byte length:1];
       

    }

    NSString *unicodeDes = [[NSString alloc]initWithData:commandToSend encoding:(NSUTF16StringEncoding)];
    return unicodeDes;
    }

@end

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号