我已经实现了pdf解析,其中我已经解析了pdf并获取了所有文本,但它显示了字符,因此我想转换为utf字符串。如何可能请帮我解决这个问题。
答案 0 :(得分:0)
首先,您需要找出当前用于文本的编码。我猜它是ISO-8859-1,又名拉丁语-1或它的变体ISO-8859-15,又名拉丁语-15。
一旦知道这是小菜一碟。您还没有说明您在哪个容器中获得了文本,例如它是存储在C字符串还是NSData中。
假设你有一个C字符串。在这种情况下,你会这样做:
myString = [[NSString alloc] initWithBytes:myCString
length:strlen(myCString)
encoding:NSISOLatin1StringEncoding];
如果您有NSData,则可以使用initWithData:encoding:
初始值设定项。根据Apple的文档,这就是你需要做的所有事情,“一个字符串对象呈现为一个Unicode字符数组”。如果您需要UTF8编码的C字符串,则可以通过以下方式查询:
myUTF8CString = [myString UTF8String];
还有dataUsingEncoding:
来获取NSData对象而不是C字符串。