如何从我的应用程序包中读取文本文件并将其显示在UITextView中

时间:2011-11-04 06:08:07

标签: iphone objective-c xcode

我想从我的应用程序包中读取一个名为“config.txt”的文本文件,并将其显示在UITextView中。下面的代码不起作用,任何人都可以帮助我吗?

如果我想在View上显示它,那么我应该做什么。

我有一个UITextView的IBOutlet,也请告诉我如何以编程方式更改文本字体和颜色。

NSString *filePath = [[NSBundle mainBundle] pathForResource:@"config" ofType:@"txt"];  
if (filePath) {  
    NSString *myText = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding];
    if (myText) {  
        textView.text= myText;    
    }
}


[super viewDidLoad];

4 个答案:

答案 0 :(得分:1)

检查以确保textView不是nil,并确保在Interface Builder中设置IBOutlet连接。

要以编程方式设置UITextView的字体和颜色,请使用:

textView.font = [UIFont fontWithName:@"Helvetica" size:18.0f];

textView.textColor = [UIColor blueColor];

请参阅:

答案 1 :(得分:0)

您的文件扩展名是“.text”还是“.txt”?

另外,为什么要将文件读入NSData对象,然后读取NSString?

答案 2 :(得分:0)

查看您的config.txt是正常还是凌乱的代码 我的意思是你可以在X-code环境中检查你的txt文件

答案 3 :(得分:0)

以下代码对我有用:

NSString *filePath = [[NSBundle mainBundle] pathForResource:@"config" ofType:@"txt"]; 

if (filePath) {  
    NSError *error;
    NSString *myText = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:&error];

    if(!error) {
        if (myText) {  //config file contains text
            textView.font = [UIFont fontWithName:@“Times New Roman” size:16.0f];
            textView.textColor = [UIColor blackColor];
            textView.text= myText;    
        }
    }
    else {
        //Handle error while reading file
    }
}
else {
    //File path does not exists. Handle error
}