首页 > 其他分享 >Apple开发_URL中文乱码问题

Apple开发_URL中文乱码问题

时间:2023-02-20 15:57:34浏览次数:42  
标签:NSUTF8StringEncoding Apple URL 乱码 NSString CHLog string2 string3 string1

1、场景描述

  • 1.1 HTTPS拼接地址

    • 如果地址含中文的话程序会crash,所以需要编码使其不包含中文。
  • 1.2 文件地址为乱码

    • 需要用到文件地址中的文字,乱码不友好。

2、编码与解码

  • 2.1 测试代码

NSString *string1 = @"https://www.cloudsafe.com/文件夹";

NSString *string2 = [string1 stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSString *string3 = [string2 stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

NSString *string4 = [string2 stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSString *string5 = [string3 stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

NSString *string6 = [string4 stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSString *string7 = [string5 stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

CHLog(@"string1 == %@", string1)
CHLog(@"string2 == %@", string2)
CHLog(@"string3 == %@", string3)
CHLog(@"string4 == %@", string4)
CHLog(@"string5 == %@", string5)
CHLog(@"string6 == %@", string6)
CHLog(@"string7 == %@", string7)
  • 2.2 测试结果

    • 其中,string1 编码 2 次,成 string3,所以需要解码 2 次才看到中文 string7
    • 解码完成,连续解码对结果不会产生影响。

标签:NSUTF8StringEncoding,Apple,URL,乱码,NSString,CHLog,string2,string3,string1
From: https://www.cnblogs.com/CH520/p/17137660.html

相关文章