菜鸟教程小白 发表于 2022-12-12 17:00:14

iphone - 重音的 NSString 编码显示疯狂的字符


                                            <p><p>我正在从服务器下载数据(文本)。</p>

<p>我都尝试过:<code>NSISOLatin1StringEncoding</code> 和 <code>NSASCIIStringEncoding</code></p>

<p>但我不断看到类似:<code>{"estado":"M\u00e9xico"}</code></p>

<p>注意它应该读作 <code>México</code> 而不是 <code>M\u00e9xico</code>(在 e 上带有重音)。</p>

<p>上网查了一下,发现<code>\u00e9</code>其实是<code>é</code> <a href="http://www.fileformat.info/info/unicode/char/e9/index.htm" rel="noreferrer noopener nofollow">link.</a> </p>

<p>但是 NSString 无法解释这一点,而是在我的 UILabel 上打印出奇怪的东西:</p>

<p> <img src="/image/25nwe.png" alt="enter image description here"/> </p>

<p>非常感谢您对此提供的帮助。</p>

<p>另外,如果您有兴趣,可以从这里下载数据:<a href="http://www.miorden.com/demo/iphone/estadoJSON.php" rel="noreferrer noopener nofollow">http://www.miorden.com/demo/iphone/estadoJSON.php</a> </p>

<pre><code>NSData *data = ];

NSString *string = [ initWithData:data encoding:NSASCIIStringEncoding];

NSLog(@&#34;Downloaded: %@&#34;, string);   

string = encoding:NSISOLatin1StringEncoding error:nil];

NSLog(@&#34;Downloaded: %@&#34;, string);
</code></pre>

<p>我已经尝试了好几天了,这让我很生气!</p>

<p>非常感谢!</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>这似乎是 unicode,试试 NSUTF8StringEncoding。</p></p>
                                   
                                                <p style="font-size: 20px;">关于iphone - 重音的 NSString 编码显示疯狂的字符,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/7005981/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/7005981/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: iphone - 重音的 NSString 编码显示疯狂的字符