NSFileManager—基本的文件操作

Objective-C语言的文件操作 通过这篇文章,我们了解了如何在Objective-C中进行基本的文件操作,包括文件的创建、读取、写入、删除,目录的管理,以及获取文件属性等。掌握这些基础知识后,你将能够在自己的应用程序中自如地处理文件,增强你的应用的实用性。在实际开发中,文件操作的应用非常广泛。例如,对于数据持久化,通常会涉及到将数据写入文件或从文件中读取数据。此外,对于一些需要记录日志的应用,文件操作也是不可或缺的一部分。 阅读详情
//
//  main.m
//  OC语言学习


#import <Foundation/Foundation.h>


int main(int argc, const char * argv[]) {
   
    @autoreleasepool {
        
        //基本的文件操作
        //假定存在一个名为"testfile"的文件
        //在当前目录
        
        NSString *fName = @"testfile";
        NSFileManager *fm;
        NSDictionary *attr;
        
        //需要创建文件管理器的实例
        fm = [NSFileManager defaultManager];
        
        //首先去人测试文件是否存在
        if ([fm fileExistsAtPath:fName] == NO) {
            NSLog(@"文件不存在");
            return 1;
        }
        
        //创建一个副本
        if ([fm copyItemAtPath:fName toPath:@"newfile" error:NULL] == NO) {
            NSLog(@"文件拷贝失败");
            return 2;
        }
        
        //判断2个文件是否一致
        if ([fm contentsEqualAtPath:fName andPath:@"newfile"] == NO) {
            NSLog(@"不一致");
            return 3;
        }
        
        //重命名
        if ([fm moveItemAtPath:@"newfile" toPath:@"newfile2" error:NULL] == NO) {
            NSLog(@"重命名失败");
            return 4;
        }
        
        //获取newfile2文件的大小
        if ((attr = [fm attributesOfItemAtPath:@"newfile2" error:NULL]) == nil) {
            NSLog(@"没有获取到文件属性");
            return 5;
        }
        NSLog(@"文件的size是:%llu bytes",[[attr objectForKey:NSFileSize] unsignedLongLongValue]);
        
        //删除文件
        if ([fm removeItemAtPath:fName error:NULL] == NO) {
            NSLog(@"文件删除失败");
            return 6;
        }
        
        //显示文件内容
        NSLog(@"%@",[NSString stringWithContentsOfFile:@"newfile2" encoding:NSUTF8StringEncoding error:NULL]);
        
    }
    return 0;
}

ios-使用NSFileManager管理文件系统.zip 为了安全起见,iOS系统把每个app及其数据都放在各自的沙盒(sandbox)里面,每个app只能访问自己沙盒目录内的文件和数据等。在安装新的app时,安装程序会在沙箱目录中为app创建多个容器目录,每一个容器目录都有特定的用途。 demo 地址 github.com/pro648/BasicDemos-iOS/tree/master/FileManager 详细介绍:github.com/pro648/tips/wiki/使用NSFileManager管理文件系统 - Bundle Container目录包含应用程序包。 - Data Container目录包含app和用户的数据,可以进一步分为几个子目录,以便app对数据进行分类。 - 应用程序还可以在运行时请求访问如iCloud容器一类目录。 详细介绍: demo下载: 立即下载

相关推荐

单精度浮点数存储、双精度浮点数存储

单精度浮点数存储、双精度浮点数存储

fancynthia的博客 1303

NSFileManager的简介和使用

通过使用NSFileManager类来管理和操作文件、目录,NSFileManager,文件或目录是使用文件的路径名的唯一标示。每个路径名都是一个NSString对象。 NSFileManager对象通过defaultManager方法来创建实例   NSString *path1=[NSHomeDirectory() stringByAppendingPathComponent:@"Doc

qq_29682197的博客 257

华硕ROG枪神双系统实战:Ubuntu安装避坑指南

本文是华硕ROG枪神笔记本安装Ubuntu双系统的详细避坑指南。针对其独特的硬件与BIOS设计,文章核心解决了VMD控制器导致硬盘无法识别、驱动兼容性等关键难题,并提供了从BIOS设置、分区方案到安装后驱动配置与性能调优的一站式解决方案,帮助用户实现稳定的双系统体验。

raspberrypi5的博客 545

NSFileManager—基本的路径操作

// // main.m // OC语言学习 #import int main(int argc, const char * argv[]) { @autoreleasepool { /* NSPathUtilities.h 包含了NSString的函数和分类扩展,它允许你操作路径名。 */

585

OpenVPN 新增 windows 客户端

虚拟私人网络(Virtual Private Network,简称VPN)是一种网络技术,它允许用户通过公共网络(如互联网)建立一个安全的连接通道。本文介绍如何添加 windows 客户端。

利昂的技术存档 3762

共享单车需求预测问题:建模篇

机器学习训练营——机器学习爱好者的自由交流空间(qq群号:696721295) 在上一篇里,我们使用可视化的方法分析了“共享单车”的数据集,理解了特征(变量)之间的关系。我们将在本篇建立几个模型预测单车的需求量,并比较它们的预测效果。 随机森林填充法 首先,导入必需的库、训练集和检验集。 import pylab import calendar import numpy as np impor...

wong2016的博客 1万+

javascript对文档对象模型DOM的基本操作学习笔记

文档对象模型(DOM)提供了一种访问和修改HTML文档内容的方法。DOM是万维网联盟(W3C)定义的一种标准。     学习的重点:如何使用javascript访问和操作DOM。     1、把DOM看作是一棵树 用树形结构表示的简单文档     说明:树结构中的元素也可以被称作结点或结点对象。     2、获取元素     获取元素有两种方式:     1)getEle

崔洪振367 575

YOLOv12改进前必看 - YAML模型配置文件详细解读(再也不用担心通道数不匹配) 附网络结构图

YOLOv12的模型配置文件在中,里面包含yolov12的以及的不同大小的模型,本文将详细介绍一下YOLOv12模型文件中各参数的含义。

Limiiiing的博客 3275

iOS沙盒机制及文件操作 NSFileManager的基本使用

本人借鉴前人经验,自己总结了一点沙盒的相关知识和NSFile

u010862912的专栏 691

js逆向第3例:蝉妈妈大屏实时数据formDataSign加密

蝉妈妈大屏抖音直播实时数据是抓取抖音直播间数据的实时数据,有类似需求的公司但没有能力去搞定抖音,抓取蝉妈妈数据也是一个不错的选择。接下来就是调试找到加密点,说句题外话蝉妈妈的所有js文件打包方式用的都是webpack5,那如何区分打包方式可以阅读这篇文章。时间戳 ,经过观察发现加密参数是实时变化的。这个函数扣下来,在浏览器控制台中测试一下。言归正传,打断点找到变量。继续打断点向上找又发现了。查看请求参数,可以看到。请求的内容,那么这个。

花臂不花Home 1538

Unreal5从入门到精通之初学者碰到解决不了的问题怎么办?

在学习Unreal的过程中,你曾陷入困境了吗?对于我来说,这种情况发生得比我愿意承认的要多得多。幸运的是,除了一般地在网上搜索之外,还有很多地方可以获得虚幻引擎的帮助。

TxNet 976

iOS中NSFileManager的使用

//NSFileManager用于判断         NSString * filePath=@"/Users/ms/Desktop/contact.json";         NSString * filePath1=@"/Users/ms/Desktop";         //1.文件是否存在         NSFileManager * fm=[NSFileManager

BLANK...... 391

RK3568平台(USB篇)USB基础知识

现象:把USB设备比如Android手机接到PC答1:是USB控制器,是USB控制器内嵌的root hub.答2. windows里已经有了USB的总线驱动程序,接入USB设备后,是"总线驱动程序"知道你是"android phone"提示你安装的是"设备驱动程序"。USB总线驱动程序负责:识别USB设备, 给USB设备找到对应的驱动程序。答3. PC的USB口内部,D-和D+接有15K的下拉电阻,未接USB设备时为低电平USB设备的USB口内部,D-或D+接有1.5K的上拉电阻;

weixin_49303682的博客 1658

NSFileManager和NSFileHandle

NSFileManager和NSFileHandle(附:获取文件大小 ) //file 文件操作 NSFileManager  常见的NSFileManager文件的方法: -(BOOL)contentsAtPath:path                从文件中读取数据 -(BOOL)createFileAtPath:path contents:(BOOL)data attr

The Life with iOS 850

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

iOS文件和目录操作,iOS文件操作,NSFileManager使用文件操作:

NSFileManager常用的文件方法:-(NSData*)contentsAtPath:path 从一个文件中读取数据-(BOLL)createFileAtPath:path contents:(NSData*)data attributes: attr 向一个文件写入数据-(BOOL)removeItemAtPath:path error:err 删除一个文件-(BOOL)move...

diaomu2002的博客 224

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

NSFileManager,NSPathUtilities,NSProcessInfo和NSFileHandle

NSFileManager: 管理文件和目录使用NSFileManager,文件或目录使用文件的路径名为唯一标识。 完整路径也称为绝对路径,以斜线(/)开始。 特殊的代字符(~)作为用户主目录的缩写。 当前目录为"."; 父目录为“..”; 创建方法: + (NSFileManager *)defaultManager; 一些重要常用的方法: 目录方法:

Qirito的专栏 595

NSFileManager NSFileHandler

NSFileManger + defaultManager//获取默认的对象      – contentsOfDirectoryAtPath:error://获取指定路径下的所有文件和文件夹的名称      – createDirectoryAtPath:withIntermediateDirectories:attributes:error://创建一个文件夹      –

Crazy Panda 983

黑马程序员-ios学习笔记 Foundation 中的 NSFileManager

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- NSFileManager 一、定义:NSFileManager是用来管理文件系统的;可以用来进行常见的文件\文件夹操作(拷贝、剪贴、创建等)。  NSFileManager使用了单例模式singleton 使用defaultManager方法可以获得那个单例对象[NSFileMan

lanlankmil的博客 508

Objective-C语法之----NSFileManager的使用(文件操作)(

1、文件的创建 -(IBAction) CreateFile { //对于错误信息 NSError *error; // 创建文件管理器 NSFileManager *fileMgr = [NSFileManager defaultManager]; //指向文件目录 NSString *documentsDirectory= [NSHomeDirect

Ale 527

[非凡程序员]文件管理 NSFileManager NSFileHandle

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33717117的博客 201

文件操作

#import #define PATH @"/Users/student/Andrew/XCODE_OC/week2/1.txt" int main(int argc, const char * argv[]) {     @autoreleasepool {                  /**********************

转身扭到脖子的专栏 393

IPhone之NSFileManager的使用

1、文件的创建 -(IBAction) CreateFile { //对于错误信息 NSError *error; // 创建文件管理器 NSFileManager *fileMgr = [NSFileManager def

ThomasQiuJS的专栏 794

黑马程序员——Foundation框架——NSFileManager介绍及使用

------- android培训、iOS培训、java培训、期待与您交流!----------

yanglipeng1993的博客 481

IOS沙盒机制和文件操作(3)

2013年12月12日学习日志:IOS沙盒机制和文件操作(3) 1.    fileManager使用操作当前目录 NSFileManager*fileManager = [NSFileManager defaultManager];     NSArray *paths =NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, N

卤海虾的专栏 749

iOS - NSFileManager的读写操作

-(void) write { //创建文件管理器 NSFileManager *fileManager = [NSFileManager defaultManager]; //获取路径 //参数NSDocumentDirectory要获取那种路径 NSArray *paths = NSSearchPathForDire

VV_ting的专栏 713
上一篇: Dictionary对象
下一篇: NSFileManager—使用NSData缓存
学习笔记666
博客等级 码龄12年 1047粉丝 1369原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值