在Objective-C或PHP中从Windows-1255转换为UTF-8编码


Converting from Windows-1255 to UTF-8 encoding in Objective-C or PHP

我正在开发一个iPhone应用程序在Xcode带来的数据从一个希伯来语网站的SQL数据库。该数据库对其所有表使用Windows-1255编码。当我从这个数据库拉数据到我的应用程序时,它显示为乱码,所以我认为它没有从Windows-1255编码转换为UTF-8编码,我想在我的应用程序中使用数据。

我如何将数据转换为UTF-8在Xcode?我可以在查询中添加一些东西,以便数据库本身将发送已经翻译为UTF-8的数据,而不是向我发送Windows-1255编码的数据吗?

我假设你正在接收这个数据作为' NSData'类型。您需要做的是使用方法:

- (id)initWithBytes:(const void *)bytes length:(NSUInteger)length encoding:(NSStringEncoding)encoding

on NSString。从数据中获取字节并将其作为字节传递。唯一的问题是我没有真正看到1255的编码类型-列表在这里。

希望有帮助

尝试iconv PHP函数。

对于PHP,你可以使用这个函数:http://php.net/manual/en/function.mysql-set-charset.php

注意,您需要在连接到数据库后立即执行此操作。