ios中文件的相关操作:读,写,删除

iOS - 沙盒文件操作指南 最近在学习数据持久化相关的内容,文件作为 iOS 客户端开发中一种常见的数据保存方式,自然也是应该学习的内容,本文就来简单介绍文件相关的一些知识。 阅读详情

创建与删除:
//创建文件管理器
NSFileManager *fileManager = [NSFileManager defaultManager];
//获取路径
//参数NSDocumentDirectory要获取那种路径
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];//去处需要的路径

//更改到待操作的目录下
[fileManager changeCurrentDirectoryPath:[documentsDirectory stringByExpandingTildeInPath]];

//创建文件fileName文件名称,contents文件的内容,如果开始没有内容可以设置为nil,attributes文件的属性,初始为nil
[fileManager createFileAtPath:@"fileName" contents:nil attributes:nil];

//删除待删除的文件
[fileManager removeItemAtPath:@"createdNewFile" error:nil];


写入数据:
//获取文件路径
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"fileName"];

//待写入的数据
NSString *temp = @”Hello friend”;
int data0 = 100000;
float data1 = 23.45f;

//创建数据缓冲
NSMutableData *writer = [[NSMutableData alloc] init];

//将字符串添加到缓冲中
[writer appendData:[temp dataUsingEncoding:NSUTF8StringEncoding]];

//将其他数据添加到缓冲中
[writer appendBytes:&data0 length:sizeof(data0)];
[writer appendBytes:&data1 length:sizeof(data1)];

//将缓冲的数据写入到文件中
[writer writeToFile:path atomically:YES];
[writer release];


读取数据:
int gData0;
float gData1;
NSString *gData2;

NSData *reader = [NSData dataWithContentsOfFile:path];
gData2 = [[NSString alloc] initWithData:[reader subdataWithRange:NSMakeRange(0, [temp length])]
encoding:NSUTF8StringEncoding];
[reader getBytes:&gData0 range:NSMakeRange([temp length], sizeof(gData0))];
[reader getBytes:&gData2 range:NSMakeRange([temp length] + sizeof(gData0), sizeof(gData1))];

NSLog(@”gData0:%@ gData1:%i gData2:%f”, gData0, gData1, gData2);

读取工程中的文件:
读取数据时,要看待读取的文件原有的文件格式,是字节码还是文本,我经常需要重文件中读取字节码,所以我写的是读取字节文件的方式。
//用于存放数据的变量,因为是字节,所以是UInt8
UInt8 b = 0;

//获取文件路径
NSString *path = [[NSBundle mainBundle] pathForResource:@”fileName” ofType:@”"];

//获取数据
NSData *reader = [NSData dataWithContentsOfFile:path];

//获取字节的个数
int length = [reader length];
NSLog(@”——->bytesLength:%d”, length);
for(int i = 0; i < length; i++) { //读取数据 [reader getBytes:&b range:NSMakeRange(i, sizeof(b))]; NSLog(@”——–>data%d:%d”, i, b);

}

ios读写数据库例子 ios的一个SQLite数据库操作例子 具体使用参见例子demo 立即下载

相关推荐

GEO生信数据挖掘实战:从临床信息提取到多维分组可视化(聚类与PCA)

本文以GSE1297数据集为例,详细讲解了GEO生信数据挖掘中临床信息提取与分组构建的实战流程。通过R语言解析样本元数据,利用字符串处理技术从文本中精准构建疾病与对照分组,并强调使用层次聚类图和PCA图进行可视化验证,确保分组合理性与分析可靠性,为后续差异表达等高级分析奠定坚实基础。

cheese的博客 361

前端知识整理

多行文字然后超出省略号隐藏 overflow: hidden; display: -webkit-box; text-overflow: ellipsis; -webkit-line-clamp: 2; -webkit-box-orient: vertical; 网站适应手机屏幕 <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-sca" /><%--

weixin_45563970的博客 911

S7-200SMART系列全套接线说明

SMART200接线方法,输入,输出,模拟量,面板,扩展糟等,并且详细说明接线原理。

文都龙哥 1万+

iphone:ios中文件的相关操作:读,写,删除

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

weixin_34366546的博客 193

告别JSON!Anthropic发布Tool Calling 2.0,Agent上下文消耗骤降80%

Anthropic发布ToolCalling 2.0更新,彻底革新AI Agent开发模式。四大核心特性:1)程序化工具调用,允许模型直接输出可执行代码替代JSON交互,降低30-50%Token消耗;2)动态网页过滤,自动清洗网页内容减少24%无效信息;3)工具搜索机制,按需加载工具定义,最高优化80%上下文窗口;4)工具使用示例,通过Few-Shot示范提升复杂表单处理准确率至90%。这一升级将Agent范式从"大模型作为路由"推进到"大模型作为引擎",但需注意代

老孙 | Ethan Sun 的博客:AI 智能体与 AI 原生软件的工程实践 797

OpenFOAM-v2006重叠网格挖洞问题实战:如何手动修复overset代码中的边缘识别缺陷

本文深入探讨了OpenFOAM-v2006中重叠网格挖洞问题的实战解决方案,重点修复overset代码中的边缘识别缺陷。通过逆向工程解析挖洞决策机制,设计最小侵入式的函数override方案,并建立多级验证体系,有效解决了网格挖洞区域覆盖不全的问题,提升了计算流体动力学模拟的准确性和可靠性。

weixin_29216049的博客 433

Native.js示例汇总

Native.js虽然强大和开放,但很多web开发者因为不熟悉原生API而难以独立完成。 这篇帖子的目的就是汇总各种写好的NJS代码,方便web开发者。 众人拾柴火焰高,有能力的开发者多多提交NJS代码,大家都会给你点赞的,我们也会为每位共享NJS代码的朋友送上200积分。 Android平台 Android动态权限申请 https://ask.dcloud.net.cn/article/35861 监听手机锁屏,解锁,开屏 http://ask.dcloud.net.cn/article/35205

weixin_45432615的博客 1006

【微服务】SpringBoot 整合Kafka 项目实战操作详解

SpringBoot 整合Kafka 实战操作详解

congge 5573

ios中@class和 #import,两种方式的讨论

很多刚开始学习iOS开发的同学可能在看别人的代码的时候会发现有部分#import操作写在m文件中,而h文件仅仅使用@class进行声明,不禁纳闷起来,为什么不直接把#import放到h文件中呢? 这是因为h文件在修改后,所有import该h文件的所有文件必须重 新build,因此,如果把#import写在h文件中,import该h文件的文件也就会产生不必要的编译,增加编译时间,特别是在项目文

xiazailushang的专栏 1889

UE5 推荐的资产命名规范

在开发阶段中,随着 虚幻引擎(UE)(Unreal Engine (UE)) 项目日益复杂,内容浏览器(Content Browser) 中的 资产(Assets) 列表会不断扩充。这会导致资产出现各种变体版本,也会导致资产名称因过于相似而造成混淆。比如,你有一个文件夹名为"Soldier",这个文件夹中有蓝图、纹理和模型,它们的名称中都带"Soldier"一词,但在简单列表中,很难区别它们。

一碗清深的博客 3375

3、图像中文字信息提取技术全解析

本文全面解析了图像中文字信息提取(Text Information Extraction,TIE)的技术原理、挑战及应用领域。详细介绍了图像中三种主要文字形式:场景文字、字幕文字和文档文字的特点及提取难点。系统阐述了TIE技术的主要流程步骤,包括文字检测、定位、提取与增强、识别等关键阶段,并对主流技术方法进行了分类比较,包括基于连通组件、边缘、纹理等方法的优缺点分析。文章还介绍了多种其他提取技术,如二值化方法、混合方法、基于梯度的方法等,并提出了一种基于立体帧的新型场景文字提取方法,通过实验验证了该方法在召

ll5678的博客 119

iOS笔记—文件的写入、读取与操作

有时候,项目中需要将数据持久化存储。我们的做法之一就是将其写入文件。当需要的时候可以从文件中读取出来即可。 // // main.m // 写入文件 // // Created by hhg on 15/5/28. // Copyright (c) 2015年 hhg. All rights reserved. // #import &amp;amp;amp;lt;Foundation/Foundatio...

csdn_hhg的博客 1万+

API Streaming Failed 400 <400>InternalError.Algo.InvalidParameter input content must be a string解决方案

本文主要介绍了API Streaming Failed 400 <400> InternalError.Algo.InvalidParameter input content must be a string解决方案,希望能对使用vscode中cline的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 3万+

[iOS] ios中文件的相关操作:读,写,删除

创建与删除: //创建文件管理器 NSFileManager *fileManager = [NSFileManager defaultManager]; //获取路径 //参数NSDocumentDirectory要获取那种路径 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,

angeli_snow的专栏 836

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

iOS 文件操作 NSFileManager

相关知识 相关文件操作 NSFileManager和NSFileHandle 对象等复杂类型的读写操作 参考地址

LOLITA0164的博客 1万+

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

IOS 删除文件夹下所有文件

有时候需要在iOS系统里面,删除指定文件夹的内容,文件夹里面可能是文件,也可能包含有文件夹。 删除指定类型的文件。方法如下: NSString *extension = @"m4r"; NSFileManager *fileManager = [NSFileManager defaultManager]; NSArray *paths = NSSearchPathForDirector

Sunsgne的专栏 1572

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

文件相关操作

程序运行时产生的数据都属于临时数据,程序一旦运行结束都会被释放通过文件可以将数据持久化C++的文件操作需要包含头文件文件分类文本文件:文件以文本的ASCII码形式存储在计算机中二进制文件:文件以文本的二进制形式存储在计算机中,用户一般不能直接读懂他们打开文件的方式ios::in 为读文件而打开文件ios::out 为写文件而打开文件ios::ate 初始位置:文件尾ios::app 追加方式写文件ios::trunc 如果文件存在先删除再创建。

qq_52396030的博客 451

iOS关于操作本地文件详解

最近公司要做APP的统计,这就需要将APP中的统计数据记录到本地文件中,最后统一上传,下面就是关于本地文件的增删改查的一些操作的详解。首先,要知道iOS沙盒模型存放文件的文件夹Documents,temp,Library,Application。1 . Documents 目录:所有的应用程序数据文件写入到这个目录下,这个目录用于存储用户数据或其他应该定期备份的信息。2 . Application

Levilly的博客 6293

containers文件夹可以删除吗_iOS14描述文件可以删除吗?iPhone删除iOS14描述文件方法...

在6月23日的WWDC20开发者大会上,苹果正式发布了 iOS/iPadOS 14 系统更新,并带来了首个iOS14测试版与公测版更新,版本号均为 18A5301。由于 iOS14 正式版需要等到9月份发布,目前尝鲜新一代iOS系统的 iPhone 用户只能通过安装描述文件OTA 或 刷机 升级。由于刷机需借助电脑,操作也比较麻烦,大多数尝鲜升级的iPhone都是通过安装iOS14测试版...

weixin_39986973的博客 1691

c++ 文件操作

c++ 文件操作相关类: ofstream: 写操作(输出)的文件类 (由ostream引申而来) ifstream: 读操作(输入)的文件类(由istream引申而来) fstream: 可同时读写操作的文件类 (由iostream引申而来) 文件打开 方式一: ofstream file ("example.bin", ios::out | ios::app | ios::binary); 方式二: ofstream file; file.open ("example.bin",

帅的没拼音 1333

交换机IOS升级实例及相关文件命令

1.查看文件系统,默认是flash.dir all (flash: )show file system 2.更改目录:cd xxpwd (查看当前目录)3.新建目录:mkdir xx4.删除目录:delete/force(不再询问确认)/recursive(删除目录下的子目录和文件)如果是flash: (整个flash),如果是目录,则是整个目录.不可恢复.5.创建一个tar文件:archive

CageYang`s Blog 2677

苹果删文件后无服务器,iOS13描述文件可以删除吗?iPhone删除描述文件图文教程...

苹果此前已经宣布,计划提前于 9 月 25 日正式发布 iOS/iPadOS 13.1正式版系统更新,考虑到不少果粉朋友还停留在iOS13.1测试版或公测版,如果明天想要第一时间升级到正式版,记得需要提前删除描述文件,并重启设备。下面本文简单科普下,描述文件是什么、是否可以删除以及如何删除,希望对新手朋友有所帮助。描述文件是什么?描述文件是苹果操作系统,包括iOS、iPadOS、watchOS、m...

weixin_31029019的博客 4042

IOS文件常用操作

1、常见的NSFileManager文件方法 -(NSData *)contentsAtPath:path  //从一个文件读取数据 -(BOOL)createFileAtPath: path contents:(NSData *)data attributes:attr  //向一个文件写入数据 -(BOOL)removeItemAtPath:path error:err  /

angeli_snow的专栏 747
上一篇: iOS已发布应用中对异常信息捕获和处理
下一篇: layoutSubviews在以下情况下会被调用
ch_soft
博客等级 码龄17年 828粉丝 166原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值