iPhone中如何从Application Bundle中读取文件

首先必须将文件加入Xcode工程的Resources目录。然后可以如下访问文件,假设文件为MyFile.txt:
1 NSString *filePath = [[NSBundle mainBundle] pathForResource:@"MyFile" ofType:@"txt" ];   
2 NSData *myData = [NSData dataWithContentsOfFile:filePath];   
3 if (myData) {   
4     // do something useful   
5 }

一段将help文本文件读入UIWebView的完整示例:

1 NSString *filePath = [[NSBundle mainBundle] pathForResource:@"HelpDoc" ofType:@"htm" ];   
2 NSData *htmlData = [NSData dataWithContentsOfFile:filePath];   
3 if (htmlData) {   
4     [webView loadData:htmlData MIMEType:@"text/html" textEncodingName:@"UTF-8" baseURL:[NSURL URLWithString:@" http://iphoneincubator.com " ]];   
5 }

如果想将文件读入字符串,则可以用UITextView显示,例如:

1 NSString *filePath = [[NSBundle mainBundle] pathForResource:@"important" ofType:@"txt" ];
2 if (filePath) {
3     NSString *myText = [NSString stringWithContentsOfFile:filePath];
4     if (myText) {
5         textView.text= myText;
6     }
7 }

 

NSString *documentPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString *filePath = [documentPath stringByAppendingPathComponent:@"test.rtf"];
NSData *fileData = [NSData dataWithContentsOfFile:filePath];
NSString *testStr = [[NSString alloc] initWithData:fileData encoding:NSUTF8StringEncoding];
NSLog(@"translate by DATA is : %@", testStr);
    

或者这样 :
NSString *documentPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString *filePath = [documentPath stringByAppendingPathComponent:@"test.rtf"];
NSString *fileString = [NSString stringWithContentsOfFile:filePath];

你可能感兴趣的:(xcode,application,iPhone,resources,encoding)