将字节数组转换为PDF文件IOS

时间:2012-05-01 10:21:39

标签: ios cocoa-touch pdf nsdata

我有以下代码来调用为PDF文件返回byte[]的web服务。 有什么不对 ?它正在生成损坏的PDF文件。

更多详情

IOS通过Web服务发送pdf文件请求,该服务是用.Net Framework编写的。 webservice返回PDF文件的字节数组。现在我需要做的是捕获字节数组并将其转换为IOS中的PDF文件。

以下代码是我尝试做的

@try {
    NSString *baseURL = @"http://host/service/GetPDF";

    NSLog(@"Service URL : %s\n", [baseURL UTF8String]);
    NSURL *serviceURL = [NSURL URLWithString: baseURL];

    NSMutableURLRequest* request = [[NSMutableURLRequest alloc] initWithURL: serviceURL];
    [request setHTTPMethod:@"POST"];
    [request setTimeoutInterval:30.0];

    NSURLResponse *response = NULL;
    NSError *requestError = NULL;
    NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&requestError];

    NSString *resourceDocPath = [[NSString alloc] initWithString:[[[[NSBundle mainBundle] resourcePath] stringByDeletingLastPathComponent] stringByAppendingPathComponent:@"Documents"]];        
    NSString *filePath = [resourceDocPath stringByAppendingPathComponent:@"myPDF.pdf"];

    NSData* pdfData = [NSData dataWithBytes:[responseData bytes] length:[responseData length]];
    [pdfData writeToFile:filePath atomically:YES];     
}
@catch (NSException* ex) {
    NSLog(@"doSomethingFancy failed: %@",ex);
}

0 个答案:

没有答案