代码改变世界

文件在iOS

2012-04-27 10:44  java环境变量  阅读(202)  评论(0编辑  收藏  举报


1。找到你的文件的路径

一个。您可能已添加到您的项目文件。

注:两种方式找到路径

1
2
的NSString * strFilePath = [[ NSBundle mainBundle] PathForResource: “ 文件名 ​​” ofType:@“延伸” ;
的NSString * strFilePath = [[ NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@“FILENAME.TXT的” ];

2。你在APP文件/文件一样的文件。

1
2
3
4
5
6
7
8
9
/ /这使一个应用程序的路径/文件,第一件事出来阵列的路径字符串
NSArray的 * arryDocumentPaths = NSSearchPathForDirectoriesInDomains NSDocumentDirectory NSUserDomainMask YES );
NSString的 * strDocumentPath = [arryDocumentPaths objectAtIndex:0];
/ /总之,我们必须把以上两行缩写起来。
的NSString * strDocumentPath = [ NSSearchPathForDirectoriesInDomains“ NSDocumentDirectory NSUserDomainMask YES )objectAtIndex:0];
/ /最后,我们可以追加“FILENAME.TXT”“
的NSString * strFilePath = [strDocumentPath stringByAppendingPathComponent:@“FILENAME.TXT的” ];
/ /其实一行就够了
的NSString * strFilePath = [[ NSSearchPathForDirectoriesInDomains的中NSDocumentDirectory NSUserDomainMask YES )objectAtIndex:0] stringByAppendingPathComponent:@“FILENAME.TXT” ];

2。创建/编辑一个文件,在你给的路径

一个。你创建的任何文件之前,你可能要检查,如果该文件已经存在。在这种情况下,的NSFileManager是在这里帮助。

1
2
3
4
5
6
7
8
/ /检查文件,DOC目录[俞飞鸿郎2012年3月6日]存在
的NSFileManager *文件管理器的NSFileManager defaultManager];
布尔 isFileExist = [文件管理fileExistsAtPath路径];
如果 (isFileExist)/ /如果没有,创建一个。
{
/,/ asume我们有一个NSArray的,其中充满字符串并呼吁arryFullOfStrings的。
原子[arryFullOfStrings的将writeToFile:strFilePath:] / / strFilePath是刚才我们得到的字符串。喜欢“.. / ..。/ file.txt的”
}

2。如果你想阅读或修改文件存在。你这样做。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
/ /接上面的代码
/ /如果存在,读它,修改它,再次保存它。[俞飞鸿郎2012年3月6日]
        {
            NSMutableArray里 arryRecordInFile = [ NSMutableArray里 arrayWithContentsOfFile:路径];
            / /如果当前的关键字的文件中存在,忽略它。意味着您可能没有修改所有俞飞鸿郎2012年3月6日]
            ( [arryRecordInFile containsObject:strKeyWordYouWantToSearch]) / /如果它不存在。
            {
                [arryRecordInFile addObject:strNewKeyWordYouWantToAdd] / /你可以添加任何其他对象不是一个字符串
                [arryRecordInFile将writeToFile:文件路径原子:] / /写入阵列提交
            }
            / /你可以给予警告,如果存在的主要工作
            {
                UIAlertView * myAlert = [UIAlertView的alloc] initWithTitle:@“标题” 消息:“关键字存在” 委托: cancelButtonTitle:@“好吧。” otherButtonTitles:;
                [myAlert秀];
                [myAlert释放];
            }
        }
注:这里是如何从一个文件的NSData填写。
1
NSData的 *数据= [ NSData的 ALLOC] initWithContentsOfFile:strFilePath];

C。一点点更多的NSFileManager

注:这是如何从给定的路径中的所有文件名。
1
2
3
的NSFileManager * FM = [ 的NSFileManager defaultManager];
NSError *错误;
NSArray的 arryFileList = [FM contentsOfDirectoryAtPath:strGivenDirPath错误:错误];
注:这里是如何从给定的路径中的文件属性。
1
的NSDictionary * dictFilesAttributes = [FM attributesOfItemAtPath:strGivenFilePath错误:错误];