如何在didFinishLaunchingWithOptions中处理unicode文件路径

时间:2011-07-05 12:25:34

标签: objective-c path nsstring copy unicode-string

我正在开发一个支持查看文档文件的应用程序。问题是我有一个名字是乌尔都语的文件 当我从Mail应用程序中选择“在MyApp中打开”选项时,该文件将被复制到Inbox文件夹中。我想将此文件复制到其他文件夹。我从launchOption字典中获取文件路径并将其传递给copyItemAt方法。获取文件路径的代码是

NSURL *url = (NSURL *)[launchOptions valueForKey:UIApplicationLaunchOptionsURLKey];
NSString *urlStr = [url absoluteString];

复制文件的代码是

[[NSFileManager defaultManager] copyItemAtPath:urlStr toPath:destPath error:&error]

但它返回错误“没有这样的文件或目录”。我已检查并将文件正确放入收件箱文件夹中,其名称为乌尔都语。

请帮助。 最诚挚的问候

1 个答案:

答案 0 :(得分:0)

通常,路径的格式为/../.../filename.extension,文件网址的格式为file://../.../filename.extension。使用absoluteString时,您将获得与字符串相同的file://../.../filename.extension。您应该发信息path

NSString *urlStr = [url path];