读取和写入 NSMutableDictionary 到 plist 文件

2024-02-09

我正在努力拯救NSMutableDictionary in applicationDidEnterBackground of AppDelegate.m一个到一个plist文件。保存后,我立即尝试检查该文件是否存在并读回,但找不到该文件。

NSString *photoCacheFilename = @"photoCache.plist";
[photoDict writeToFile:photoCacheFilename atomically:YES];
NSLog(@"File name: %@", photoCacheFilename);
BOOL isFile = [[NSFileManager defaultManager] fileExistsAtPath:photoCacheFilename];
if(isFile)
{
    NSLog (@"File found");
    NSMutableDictionary *newDictionary = [[NSMutableDictionary alloc] initWithContentsOfFile:photoCacheFilename];
}
else
{
    NSLog (@"File not found");
}

我按照一些用户的建议修改了代码,但仍然找不到该文件。我不确定我是否正确检查文件是否存在。

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsPath = [paths objectAtIndex:0];
NSString *photoCacheFilename = [documentsPath stringByAppendingPathComponent:@"photoCache.plist"];

[photoDict writeToFile:photoCacheFilename atomically:YES];

BOOL isFile = [[NSFileManager defaultManager] fileExistsAtPath:photoCacheFilename];
if(isFile)
{
    NSLog (@"File found");
    NSMutableDictionary *newDictionary = [[NSMutableDictionary alloc] initWithContentsOfFile:photoCacheFilename];
}
else
{
    NSLog (@"File not found");
}

您没有指定正确的路径Documents目录

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);  
NSString *documentsPath = [paths objectAtIndex:0];

NSString *photoCacheFilename = [documentsPath stringByAppendingPathComponent:@"photoCache.plist"]; // Correct path to Documents Dir in the App Sand box

[photoDict writeToFile:photoCacheFilename atomically:YES]; //Write
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

读取和写入 NSMutableDictionary 到 plist 文件 的相关文章

随机推荐

  • 如何使用 xargs 复制名称中包含空格和引号的文件?

    我正在尝试复制目录下的一堆文件 其中许多文件的名称中包含空格和单引号 当我尝试串起来时find and grep with xargs 我收到以下错误 find grep FooBar xargs I cp foo bar xargs un
  • 处理无效 XML 的建议方法

    我正在尝试使用 Delphi XE2 将程序与第三方服务集成 我遇到的问题是该服务没有转义它们发送给我的 XML 文档中的任何值 这是他们的 示例 xml 文档之一
  • Ruby、价值分桶、美化代码

    所以我有这个代码 def self age to bucket age age age to i if age gt 0 age lt 12 1 elsif age gt 13 age lt 17 2 elsif age gt 18 age
  • Spring roo多模块依赖

    我刚刚开始第一次玩spring roo 第一印象是相当令人兴奋 目前我正在努力创建多模块项目希望你们能帮助我 假设我有父 POM 和 2 个 Jar 项目以及 1 个 war 项目 让我们将它们命名如下 父级 POM 服务API jar 服
  • Django:从 G​​ET 请求生成查询集

    我有一个使用 GET 方法的 Django 表单设置 每个值对应于 Django 模型的属性 生成查询的最优雅的方式是什么 目前 这就是我在视图中所做的事情 def search items request if search name i
  • 无法从注册表加载包信息:“超时”参数必须是数字类型。收到类型字符串('100000')

    在我的项目中安装角度材料时出现此错误 PS C Users Avinash Kumar Desktop Projects CRUD Project 2 Library Management System UI UI Frontend gt
  • Visual Studio代码如何为命令调色板条目添加键绑定

    例如 我想为条目添加一个键绑定 Ctrl R Ctrl T Python 在终端中运行 Python 文件 非常感谢 您可以在Preferences gt Keyboard Shortcuts部分 搜索 在终端中运行 Python 文件 选
  • 在嵌入式 Jetty 上启用 TLS-1.2

    目前我正在使用启用 TLS 1 2 的代码 ServerConnector httpsConnector new ServerConnector server new SslConnectionFactory sslContextFacto
  • System.Configuration.ConfigurationManager.ConnectionStrings 没有配置连接字符串

    每当我尝试在 C 代码中运行任何内容时 都会收到以下错误 System InvalidOperationException was unhandled by user code Message No connection string co
  • PC 重新启动后,Visual Studio 有时会重建未修改的项目

    我有一个包含大约 50 个 C 项目的 Visual Studio 2013 解决方案 通常 如果我选择构建 F6 它只会构建已更改的项目 但有时在我关闭并重新启动我的电脑后 当我选择构建 F6 时 它会重建所有内容 为什么 当我重新启动电
  • 如何在 Web 服务中使用 JAXBElement

    我正在使用 WCF 开发一个可互操作的 Web 服务 我从 Java 客户端使用该服务 当我创建代理类时 它生成了所有 getter 和 setter 方法以及JAXBElement
  • 使用 SQL 中另一个表中的列更新表

    我需要根据从以下两个表中提取的数据创建一个新表 第一张表 Var cur number A 10 B 8 第二个表 Var new number A 2 A 11 B 4 B 6 新表应包含 Var 列和 Number 列 其中每个变量将有
  • w3school 包含 HTML,javascript 不工作

    所以 我最近使用了 w3school include html 这样我就不必将相同的 div 复制粘贴到我的所有页面 首先 我将它用于页眉和页脚 它使用了一些CSS样式 并且没有问题 工作完美 但是后来 我尝试再次将它用于我的下拉导航栏 其
  • RavenDB 会话 > 30

    如果我尝试保存要保存的项目列表 其中计数 gt 30 我会收到一条错误消息 最大请求数 30 已允许此会话 到达 Raven限制了数量 允许会话的远程调用 作为预警系统 预计会议时间很短 住过 Raven提供设施 像 Load string
  • 检查类上是否定义了方法

    如何检查方法是否直接在某个类上定义 而不是通过继承或包含 扩展定义 我想要类似 foo 的东西 在下面的 class A def a end end module B def b end end class C lt A include B
  • 设置 os.Mkdir 权限

    我正在尝试使用 os Mkdir 创建具有某些权限的目录 但由于某种原因我无法使其工作 我的测试程序是 package main import log os func main err os Mkdir testdir 0775 if er
  • 同时运行 React 和 Node。

    我有一个我认为不太独特的用例 但我遇到了挑战 我的应用程序是用express EJS编写的 在端口35上运行 我想包括react 所以我正在遵循教程 并在我现有的应用程序中编写这个应用程序 并在另一个端口上运行 当两个应用程序位于不同端口时
  • c++filt 源代码在哪里?

    有谁知道 c filt 源代码的链接 我想在我的代码中将 c filt 作为库调用 在 Linux 上你可以使用 usr include demangle h附带binutils dev包裹 您必须链接到libiberty from bin
  • Ansible 检查字典列表中是否存在键/值对

    我试图检查 Ansible 的字典列表中是否存在某个键 值对 我发现了这个问题 但是我不确定Python和ansible的语法是否不同 我从未在ansible中见过if语句 检查字典列表中是否已存在值 https stackoverflow
  • 读取和写入 NSMutableDictionary 到 plist 文件

    我正在努力拯救NSMutableDictionary in applicationDidEnterBackground of AppDelegate m一个到一个plist文件 保存后 我立即尝试检查该文件是否存在并读回 但找不到该文件 N