我想NSLog具有压缩流对象的PDF的内容,其中包括流中间的零(' 0 ')。
不幸的是,第一个流对象中第一次出现“ 0 ”会终止控制台上的输出......
在SO或云中根本找不到任何东西。
尝试了4种不同的方式...
NSString *pdfFilePath = [[NSBundle mainBundle] pathForResource: @"myPDF" ofType: @"pdf"];
NSURL *fileURL = [[NSURL alloc] initFileURLWithPath:pdfFilePath];
NSData *myData = [NSData dataWithContentsOfURL:fileURL];
________________________________________________________________________
//1
NSString *string = [[NSString alloc] initWithData:myData
encoding:NSASCIIStringEncoding];
NSLog(@"%@", string);
________________________________________________________________________
//2
NSString *myDataAsString = [[NSString alloc] initWithData:myData
encoding:NSASCIIStringEncoding];
NSLog(@"%@", myDataAsString);
________________________________________________________________________
//3
NSString *myPDFasString = [NSString stringWithContentsOfURL:fileURL
encoding:NSASCIIStringEncoding error:NULL];
NSLog(@"%@", myPDFasString);
________________________________________________________________________
//4
NSString *stringFromFileAtURL = [[NSString alloc] initWithContentsOfURL:fileURL
encoding:NSASCIIStringEncoding error:NULL];
NSLog(@"%@", stringFromFileAtURL);
所有 4 个在控制台上的 OUTPUT:(当然——它在后备存储中始终是一个以 null 结尾的字符串)
%PDF-1.1
%
1 0 obj <<
/Type /Catalog
/Count 1
/Pages 6 0 R >>
endobj
2 0 obj <<
%%/Type /Stream
/Filter /FlateDecode
/Length 12 >>
stream
x+TT
这里流结束是因为'x + TT'之后的'0'(这是流对象的开始)......
任何人?