2010-04-01 66 views
0

在此程序中,当我调试时,它显示fileNameString的nil。我不明白是什么问题。请帮帮我 ?使用NSString读取文件时遇到问题initWithContents OfFile

@implementation fromFileRead1 
NSString *fileNameString; 

-(id)init 
{ 
    if((self = [super init])) 
    { 
     fileNameString = [[NSString alloc] initWithContentsOfFile: @"enemyDetails.rtf" encoding:NSUTF8StringEncoding error:nil]; 
     NSArray *lines = [fileNameString componentsSeparatedByString:@"\n"]; 
     for (id *line in lines) 
     { 
      NSLog(@"Line1%@", line); 
     } 
    } 
    return self; 
} 
@end 

谢谢。


-(id)init 
{ 
    if((self = [super init])) 
    { 
     NSString *path = @"/Users/sridhar/Desktop/Projects/exampleOnFile2/enemyDetals.txt"; 
     NSString *contentsOfFile = [[NSString alloc] initWithContentsOfFile:path]; 
     NSArray *lines = [contentsOfFile componentsSeparatedByString:@"\n"]; 
     for (id *line in lines) 
     { 
      NSLog(@"Line1%@", line); 
     } 
    } 
    return self; 
} 
@end 
+0

我以另一种方式做了。我得到了我需要的东西。但以前的方法有什么问题。请建议。我们可以使用它吗? – 2010-04-01 06:53:09

回答

4

你需要指定的完整路径与字符串文件,所以这个问题必须与这一部分:

... initWithContentsOfFile: @"enemyDetails.rtf" ... 

什么您需要的路径取决于你在哪里存储您的文本文件。如果是在你的包的资源,你可以从NSBundle得到使用-pathForResource:功能的路径:

NSString *fPath = [[NSBundle mainBundle] pathForResource:@"enemyDetails" ofType:@"rtf"]; 

如果把它储存在另一个目录在应用程序沙箱 - 见“开发编程指南”有关如何Getting Paths to Application Directories节为他们获取路径。

+0

嗨 谢谢,我认为完整的路径是不需要的。至于,它为我的.png文件工作,我认为它也可以为此工作。 – 2010-04-01 08:53:58