Iphone 如何读取文本文件

Iphone 如何读取文本文件,iphone,objective-c,nsstring,Iphone,Objective C,Nsstring,我想读取文件%I.txt并将内容保存在cadena1中 这是我的密码 NSMutableString *b = [NSMutableString stringWithFormat:@"%i", i]; [b appendString:@".txt"]; //Assing b to a Nsstring NSString *cadena1 = b; NSLog(@"The text is:%@", cadena1); 问题是我不知道如何将文件txt的内容保存到NSString中。在控制台中使

我想读取文件%I.txt并将内容保存在cadena1中

这是我的密码

NSMutableString *b = [NSMutableString stringWithFormat:@"%i", i];
[b appendString:@".txt"];

//Assing b to a Nsstring

NSString *cadena1 = b;
NSLog(@"The text is:%@", cadena1);
问题是我不知道如何将文件txt的内容保存到NSString中。在控制台中使用-->NSLog(@“Cadena de archivo de texto:%@”,cadena1); 卡德娜·德·阿奇沃·德·德克托:%i.text

我尝试:

NSString *b = [[NSBundle mainBundle] pathForResource:[NSMutableString        stringWithFormat:@"%i", i] ofType:@"txt"];
NSString *cadena1 = [NSString stringWithContentsOfFile:b encoding:NSUTF8StringEncoding    error:NULL];
NSLog(@"Cadena de archivo de texto:%@", cadena1);
但这就是结果

Cadena de archivo de texto:{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf510{\fonttbl\f0\fswiss\fcharset0 Helvetica;}{\colortbl;\red255\green255\blue255;}\paperw11900\paperh16840\margl1440\margr1440\view10800\viewh8400\viewkind0\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3965\tx523\tx523‌​6\tx6803\pardirnatural\f0\fs24\cf0我不知道该怎么办


致以最诚挚的问候

使用
nsstringwithcontents文件:编码:错误:

如果你觉得这个答案不合适,请改写你的问题。特别是要让你的问题和代码真正符合主题


然而,很可能您确实在搜索
writeToFile:atomically:encoding:error:
,但我只能猜测

你的问题不是很清楚

“保存”:将数据(例如,
NSSTring
)保存到文件(例如。*.txt)

“读取”:将文件(例如。*.txt)转换为数据(例如
NSSTring


创建一个
NSMutableString

NSMutableString *b = [NSMutableString stringWithFormat:@"%i", i];
[b appendString:@".txt"];
然后将
b
分配给
cadena1

NSString *cadena1 = b;
NSLog(@"Cadena de archivo de texto:%@", cadena1);
在变量
cadena1
中没有文件内容是合乎逻辑的,因为您从未读取过文件的内容。您刚刚创建了一个包含文件名的字符串

如果您的文件
%i.txt
在主捆绑包中(在Xcode中):


如果您的文件
%i.txt
位于文档文件夹中:

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *b = [documentsDirectory stringByAppendingPathComponent:[NSMutableString stringWithFormat:@"%i", i]];
NSString *cadena1 = [NSString stringWithContentsOfFile:b encoding:NSUTF8StringEncoding error:NULL]; 
NSLog(@"Cadena de archivo de texto:%@", cadena1);

如果你的评论是英文的,那将很有帮助。不管怎样,习惯英文评论是个好主意,因为有一天你可能会加入一个团队,团队的通用语言是英语。NSString
initWithContentsOfFile:encoding:error:
方法有什么问题?这没有意义。问题不在于标题描述了什么。事实上,我不知道你想做什么。@middaparka他/她不明白,必须调用这个方法。是的,这是一个有趣的问题。对于第一个解决方案,-->cadena1=Cadena de archivo de texto:{\rtf1\ansi\ansicpg1252\cooartf138\cocooasubrtf510{\fonttbl\f0\fswiss\fcharset0 Helvetica;}{\colortbl;\red255\green255\blue255;}\paperw11900\paperh16840\margl1440\margr1440\vieww10800\viewh8400\viewkind0\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx683\pardirnatural\f0\fs24\cf0我的父母没有任何选择。怎么了?此文件是否真的可用并添加到您的目标中?
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *b = [documentsDirectory stringByAppendingPathComponent:[NSMutableString stringWithFormat:@"%i", i]];
NSString *cadena1 = [NSString stringWithContentsOfFile:b encoding:NSUTF8StringEncoding error:NULL]; 
NSLog(@"Cadena de archivo de texto:%@", cadena1);