从文件中读取字符并存储为NSString

时间:2010-11-24 21:51:27

标签: objective-c nsstring

我正在尝试读取文本文件并将字符数组保存为NSStrings。

例如,如果文件只包含单词“Hello”,我想要一个包含“Hello”的NSString

我该怎么做?

3 个答案:

答案 0 :(得分:4)

NSString *string = [NSString stringWithContentsOfFile:filePath usedEncoding:&encoding error:&error];

filePath 应该是一个包含文件
路径的字符串 编码NSStringEncoding)将包含使用的编码 错误NSError *)如果出现错误将包含错误

string 将包含文件的内容,如果发生错误,则为nil

答案 1 :(得分:3)

您可以使用NSString实例方法-initWithContentsOfFile:encoding:error:或'方便方法'+stringWithContentsOfFile:encoding:error:

首先:

NSString *fileContents = [[NSString alloc] initWithContentsOfFile:pathToFile encoding:NSUTF8StringEncoding error:&error];

在第二个:

NSString *fileContents = [NSString stringWithContentsOfFile:pathToFile encoding:NSUTF8StringEncoding error:&error];

,其中

  • pathToFileNSString,是您正在阅读的文件的路径
  • encodingNSStringEncoding个常量之一(查看docs
  • error是指向NSError对象的指针,如果发生错误,该对象将由方法填充。

两者之间的选择取决于你是否想要一个自动释放的字符串。

答案 2 :(得分:1)

你可以使用类似的东西:

NSString *string = [[NSString alloc] initWithContentsOfFile:@"/path/to/file/goes/here.txt"];  如果你知道文件的确切路径。