首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Iphone >

NSString类型如何转换成NSURL型(涉及文件删除)

2012-04-12 
NSString类型怎么转换成NSURL型(涉及文件删除)?事情是这样:我用的教程有点老,工具是xcode 4.2,机器是X 10.

NSString类型怎么转换成NSURL型(涉及文件删除)?
事情是这样:我用的教程有点老,工具是xcode 4.2,机器是X 10.7.3 。书中的部分语法已经弃用,其中有一个是删除文件的方法 - (BOOL)removeFileAtPath:(NSString *)path handler:(id)handler 已经被弃用,其替代者是 - (BOOL)removeItemAtURL:(NSURL *)URL error:(NSError **)error 问题就是我怎么把那个 (NSString *)path 转换成 (NSURL *)URL 。例子中的相关代码如下:

 NSString *fName = @"testfile";

 if ([fm removeFileAtPath: fName handler: nil] == NO)
  {
  NSLog (@"File removal failed!");
  return 6;
  }

我改成这样但是删不掉,也不确定对不对

NSString *fName = @"testfile";

if ([fm removeItemAtURL: [NSURL URLWithString: [fName stringByAppendingFormat: fName]] error: nil]== NO)
  {
  NSLog (@"File removal failed!");
  return 6;
  }



是转换问题还是文件问题?

[解决办法]
path 指的是你的文件路径,不是文件名。

假设你的文件打包在主项目中:

NSString* filePath = [[NSBundle mainBundle] pathForResource:"testFile" ofType:"xml"];
[解决办法]
得把路径加上,不光是文件名
[解决办法]

探讨

引用:

得把路径加上,不光是文件名

我的文件和程序在同一目录,而且其他的操作都没问题

[解决办法]

- (BOOL)removeItemAtPath:(NSString *)path error:(NSError **)error
[解决办法]
或者用
[fm removeItemAtURL: [NSURL fileURLWithPath:(NSString *)path]]试试,path是你以前的文件路径。
[解决办法]
不用转换。就用8楼的。

热点排行