目标c:从文件问题中读取NSString NSData

Dan*_*iel 7 objective-c

我正在使用:

NSData *output1 = [NSData dataWithContentsOfFile:@"~/centralUtilOut.tmp"];
NSString *output = [[NSString alloc]initWithData:output1 encoding:NSUTF8StringEncoding];

NSLog(@"%@", output);
[output release];
Run Code Online (Sandbox Code Playgroud)

但调试窗口中没有任何内容.

这是客观的C.

注意:centralUtilOut.tmp是一个普通的文本文件

ste*_*anB 20

问题出在路径规范中.

似乎NSData -dataWithContentsOfFile:没有扩大~.

它在您使用完整路径或在路径中展开波浪号时有效:

NSData *output1 = [NSData dataWithContentsOfFile:
                      [@"~/centralUtilOut.tmp" stringByExpandingTildeInPath]];
NSString *output = [[NSString alloc]initWithData:output1 
                                        encoding:NSUTF8StringEncoding];

NSLog(@"%@", output);
[output release];
Run Code Online (Sandbox Code Playgroud)