【问题标题】:ASIHTTPRequestErrorDomain Code=8. Cannot move file from temp directory to docsASIHTTPRequestErrorDomain 代码=8。无法将文件从临时目录移动到文档
【发布时间】:2011-09-28 09:04:00
【问题描述】:

我使用 ASIHTTPReqeust 下载文件。一切下载正常,但它不能将文件从临时目录移动到文档。当我实施时

-(void) request:(ASIHTTPRequest *)request didReceiveData:(NSData *)data

请求失败并出现错误。但文件已下载。

如果我删除这个实现,一切都很好,文件正在移动到文档。 这是错误文本:

Error Domain=ASIHTTPRequestErrorDomain Code=8 "Failed to move file from '/var/folders/Qu/Qu0o0VcpEY4npJr2C1yPzE+++TI/-Tmp-/Skrillex feat. Nero - Wobbleland.mp3' to '/Users/Timur/Library/Application Support/iPhone Simulator/4.3/Applications/34389282-4013-4354-95D9-DF2847B4EE55/Documents/Audio/Skrillex feat. Nero - Wobbleland.mp3'" UserInfo=0x5949520 {NSUnderlyingError=0x59992a0 "The operation couldn’t be completed. (Cocoa error 4.)", NSLocalizedDescription=Failed to move file from '/var/folders/Qu/Qu0o0VcpEY4npJr2C1yPzE+++TI/-Tmp-/Skrillex feat. Nero - Wobbleland.mp3' to '/Users/Timur/Library/Application Support/iPhone Simulator/4.3/Applications/34389282-4013-4354-95D9-DF2847B4EE55/Documents/Audio/Skrillex feat. Nero - Wobbleland.mp3'}

谁遇到过类似的问题?

【问题讨论】:

  • 我遇到了类似的问题。

标签: objective-c ios ios4 filesystems asihttprequest


【解决方案1】:

经常引起人们注意的是,您必须创建要下载到自己的目录(ASIHTTPRequest 不会自动创建它)。

但是,鉴于您说它与实现 didReceiveData 相关,但并非如此。

如果您查看ASIHTTPRequest.m,如果您在委托中实现“didReceiveData”,您会看到它设置了“dataWillBeHandledExternally”——这将阻止数据写入磁盘。您可以自己编写数据,也可以更改 ASIHTTPRequest.m 代码以添加一个标志来强制它也在内部处理数据。

【讨论】:

  • 我已经创建了它。只有当我实现委托方法时才会出现问题。当我删除此方法时,一切都很完美
  • 抱歉,我错过了,显然我读的太快了 - 已经更新了我的答案。
【解决方案2】:

我遇到了同样的错误,但原因不同。我会发布我的问题 - 以防万一其他人有类似情况。

我试图在保存新图像之前删除旧图像。

NSString *mImgName = [managedObj valueForKey:@"aImgName"];

NSString * mFilePath = [[self applicationDocumentsDirectory] 
                stringByAppendingPathComponent:mImgName];

if ([mFileManager fileExistsAtPath:mFilePath]) 
{
    [mFileManager removeItemAtPath:mFilePath error:nil];
}

问题是 - 如果 mImgName 为 nil,mFileManager 将删除整个目录。

通过增加对 nil 或太短的 mImgName 值的额外检查,它解决了问题。

希望它对某人有所帮助!

【讨论】:

    猜你喜欢
    • 2019-01-07
    • 2018-01-06
    • 1970-01-01
    • 2014-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-04
    • 2021-11-12
    相关资源
    最近更新 更多