我正在尝试在xCode中从二进制xString创建一个PDF对象。(来自思爱普的OData,utf-8)
代码如下:
const char* buf = [temp1 UTF8String];
pdffile = [NSData dataWithBytes:buf length:length1];
[webDisplay loadData:self.pdffile MIMEType:@"application/pdf" textEncodingName:@"utf-8" baseURL:nil];
self.webDisplay.scalesPageToFit = YES;PDF is a XString length1是temp1文件的字节长度。
我得到以下错误消息:
找不到PDF标题:找不到'%PDF‘
一些想法?
发布于 2012-03-08 22:58:15
在我被删除的错误答案中,你说:
我使用两个
标准功能模块从XString创建一个XString: SCMS_AO_TABLE_GET_BYTES和SCMS_BINARY_TO_XSTRING -
当你说你有2550的时候,你会是2,然后是5,依此类推...或者你的意思是0x25。十六进制25是你想要的,如果你有一个ascii 2,那么一个肯定不会工作的ascii5。检查调试器中的内存。
发布于 2012-04-08 19:25:54
解决方案是:在SAP系统中,有一种方法可以将二进制数据(XSTRING)转换为Base64: cl_http_utility=>encode_x_base64,使用http可以传输Base64数据。在xcode中,我使用了这个库:a link
// 3) Decode Base 64
// Then you can put that back like this
NSData *b64DecData = [Base64 decode:b64EncStr];然后:[webDisplay loadData:b64DecData MIMEType:@"application/pdf" textEncodingName:@"utf-8" baseURL:nil];
https://stackoverflow.com/questions/9616643
复制相似问题