如何在ios中读取文本文件

时间:2012-02-08 08:24:24

标签: iphone ios

我正在阅读一个包含非常简单代码的txt文件。问题是在Log状态中我只获取文件的路径但内容为null。我想问题在于编码part.Any关于如何阅读我的文本文件的建议。

NSStringEncoding encoding;
NSString* content;
NSString* path = [[NSBundle mainBundle] pathForResource:@"colorpalette" ofType:@"txt"];
if(path)
{                                               
content = [NSString stringWithContentsOfFile:path  usedEncoding:&encoding  error:NULL];
}
NSLog(@"path is %@",path);
if (content)
{
    NSLog(@" content of file is %@",content);
}

3 个答案:

答案 0 :(得分:15)

此处编码参数设置不正确。

试试这个

NSString* content = [NSString stringWithContentsOfFile:path
                                              encoding:NSUTF8StringEncoding
                                                 error:NULL];
NSLog(@"%@",path);

答案 1 :(得分:6)

使用以下代码从Bundle中读取文本文件:

NSError *error;
NSString *strFileContent = [NSString stringWithContentsOfFile:[[NSBundle mainBundle]
    pathForResource: @"FileName" ofType: @"txt"] encoding:NSUTF8StringEncoding error:&error];

if(error) {  //Handle error

}

NSLog(@"File content : %@ ", strFileContent);

答案 2 :(得分:1)

我没有得到你传递函数“stringWithContentsOfFile”的编码。尝试传递它“NSUTF8StringEncoding”。如果这不起作用,请创建一个NSError实例并通过引用该函数传递它。