问题标签 [nsfilemanager]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2939 浏览

iphone - NSFileManager:继续在后台写入磁盘?

在我的 iPhone 应用程序中,我使用默认的 NSFileManager 来复制和移动一些数据。数据量可能为几 MB,因此可能需要几秒钟才能完成复制。如果用户现在开始复制过程并退出应用程序,我可以继续以后台模式写入磁盘吗?如果是这样,怎么做?我不想开始新的复制过程,而只想完成正在运行的复制过程。

我目前正在使用两种方法调用:

这两个调用都包装在另一个方法中,并通过在后台执行-performSelectorInBackground:withObject:

另一个问题是,我是否可以获得有关写入操作进展到何种程度的任何信息,或者至少是否已经完成?

编辑:更多信息:目前,我根本没有实施任何后台任务。当用户按下主页按钮时,运行磁盘操作会发生什么?他们只是被切断并且文件不完整吗?我可以在下一个开始继续写吗?他们是否被取消并删除了不完整的文件?

总结一下:我正在将数据写入磁盘,并且我希望当用户在写入操作期间按下主页按钮时它保持一致。我如何实现这一目标?

0 投票
2 回答
5356 浏览

objective-c - Cocoa - 获得 NSFileManager 的根访问权限

我需要在我的应用程序中使用 NSFileManager 移动系统文件,而且我似乎没有 root 访问权限。获得此特权的最简单方法是什么?

我已经查看了 Apple 提供的 BetterAuthorizationSample 代码,但我似乎无法让 NSFileManager 在用户批准后运行它的任务。

0 投票
6 回答
24550 浏览

objective-c - 可可 - NSFileManager removeItemAtPath 不工作

我正在尝试删除文件,但不知何故 nsfilemanager 不允许我这样做。我确实在一行代码中使用了该文件,但是一旦运行了该操作,我希望删除该文件。我已经记录了错误代码和消息,我得到错误代码:4 和消息:

有没有办法“干净”地修复这个错误(没有任何黑客),以便苹果将这个应用程序接受到他们的 Mac App Store 上?

编辑:

这就是我正在使用的:

谢谢,

凯文

0 投票
1 回答
645 浏览

iphone - iPhone 使用文件共享保存文件时出现问题

我有一个应用程序,允许用户单击按钮将铃声保存到文档目录。我的 iPad 版本可以正常工作,但是,对 iPhone 使用相同的方法似乎不起作用。这是我用来保存的代码:

我知道这是文件管理器的问题。正如所发布的,它总是像文件存在一样进入 if 语句(它不存在)。当我将 if 语句注释掉以强制它保存时,应用程序崩溃了。我究竟做错了什么?你和 iPhone 有什么不同吗?另外,我认为这不是问题,但我正在 iPod touch 上进行测试(它已更新到最新的 iOS 4.2.1。我无法使用 iPhone。任何帮助将不胜感激。

0 投票
1 回答
115 浏览

objective-c - 难以使用 ObjC 打印文件名

我在打印使用 NSFileManager 检索的文件名列表时遇到了一些问题。文档说它返回一个字符串数组 - 但我的输出是空白的。在下面的代码示例中,执行显示带有冒号的索引,仅此而已……我是一名长期的 java 程序员,但对 c/objc 来说完全是新手。我只是在滥用 printf 吗?谢谢你的帮助!

输出:
即将打印文件列表-----------
文件数:29
0:1:2:3:4:5:6:7 : 8:9:10:11:12:13:14:15:16:17:18:19:20:21:22:23:24:25:26:27:28:

}

0 投票
1 回答
400 浏览

iphone - 在 iPhone 上使用 NSFileManager 重新排序文件

我有一个关于 NSFileManager 的问题。

我将一组图像存储在 iPhone 应用程序的 Documents 目录中。

基本上它们存储为 img0001.jpg、img0002.jpg、...img0010.jpg。

我正在使用表格视图来显示这些图像的列表(我遍历目录并将它们放在 NSArray 中以显示在表格中。),但我希望允许用户重新排序这些图像。我想根据他们在 UITableView 中的移动位置重命名图像。

因此,如果他们将 img0008.jpg 移动到第 5 行,它将变为 img0005.jpg,并且它下面的所有内容都将重命名为 6、7、8 等...

我很好奇是否还有其他人需要这样做?如果是这样,你是如何攻击它的?我认为这是很有可能的,我现在只是碰壁了。

如果我在有人回复之前解决了这个问题,我会确保发布我的解决方案。

谢谢

0 投票
1 回答
1631 浏览

iphone - NSFileManager:以原子方式复制文件?

在我的 iPhone 项目中,我目前正在使用NSFileManager's-copyItemAtPath:toPath:error:方法复制文件。但是,文档没有说任何关于原子性的内容,所以如果我的应用程序尝试读取当前正在被另一个线程替换的文件,我可能会遇到麻烦。有没有办法以原子方式复制或替换文件?我正在寻找类似NSData的东西-writeDataToFilr:atomically:

0 投票
1 回答
2024 浏览

objective-c - NSFileManager 文件大小问题 - Cocoa OSX

我有一个函数可以检查 /User/Library/Preferences/ 目录中几个 plist 文件的大小。出于测试目的,我使用的是 iTunes,它在我的机器上有一个 ~500kb 的首选项文件。

编辑:我已根据答案更正了我的代码 - 如发布的那样,此代码工作正常。

但是,无论我做什么,返回的大小都是 102。不是 102kb,只是 102。我使用了 objectForKey:NSFileSize,我使用了 stringValue,都是 102。


正如下面所选答案中所述,经验教训是始终检查您提交给 NSFileManager 的路径。

谢谢!

0 投票
1 回答
936 浏览

iphone - 使用 MPMoviePlayerController 将音频流保存到文件中

我在使用 MPMoviePlayerController 进行音频流传输时遇到了一些问题。我想知道在 MPMoviePlayer 播放该文件时是否可以将数据流信息保存到文件中。

有没有一种简单的方法可以做到这一点?有人有想法吗?

0 投票
1 回答
3346 浏览

iphone - 如何在 iPhone 上将目录移动到新位置

这是我的方法,它应该简单地将目录的内容从 /someDirectory 移动到 /addons/id/UUID:

移动失败,操作无法完成。(可可错误 4。)。但是,如果我将 pathToAddonDest 更改为:

所以我可以从 /someDirectory 写入 /addons/someDirectory 但不能从 /someDirectory 写入 /addons/someDirectory/UUID。

任何想法为什么看似简单的重命名不能以这种方式工作?