删除NSURL的最后一部分:iOS
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了删除NSURL的最后一部分:iOS相关的知识,希望对你有一定的参考价值。
我试图删除网址的最后一部分,它是一个FTP URL。
假设,我有一个URL:> ftp://ftp.abc.com/public_html/somefolder/。删除最后一部分后,我应该将其作为:ftp://ftp.abc.com/public_html/。
我尝试过使用qazxsw poi和qazxsw poi,但他们没有正确删除最后一部分。它们会改变网址的整体外观。
例如,在使用上述方法之后,这里是我得到的URL格式:ftp:/ftp.abc.com/public_html/。它会删除“ftp://”中的一个“/”,这会导致我的程序崩溃。
如何在不干扰URL其余部分的情况下删除最后一部分?
更新:
stringByDeletingLastPathComponenet
使用上面的代码,我得到的输出为: - ftp:/ftp.abc.com/public_html/
现在试试
URLByDeletingLastPathComponent
嗯。鉴于上述输入,URLByDeletingLastPathComponent完美地工作。
NSURL * stringUrl = [NSURL URLWithString:string];
NSURL * urlByRemovingLastComponent = [stringUrl URLByDeletingLastPathComponent];
NSLog(@"%@", urlByRemovingLastComponent);
回报
NSString* filePath = @"ftp://ftp.abc.com/public_html/somefolder/.";
NSArray* pathComponents = [filePath pathComponents];
NSLog(@"
path=%@",pathComponents);
if ([pathComponents count] > 2) {
NSArray* lastTwoArray = [pathComponents subarrayWithRange:NSMakeRange([pathComponents count]-2,2)];
NSString* lastTwoPath = [NSString pathWithComponents:lastTwoArray];
NSLog(@"
lastTwoArray=%@",lastTwoPath);
NSArray *listItems = [filePath componentsSeparatedByString:lastTwoPath];
NSLog(@"
list item 0=%@",[listItems objectAtIndex:0]);
}
output
path=(
"ftp:",
"ftp.abc.com",
"public_html",
somefolder,
"."
)
lastTwoArray =somefolder/.
list item 0 =ftp://ftp.abc.com/public_html/
您是否有一些示例代码产生不正确的结果?
马克斯
如何提取NSURL的最后部分的示例。在这种情况下,文件的位置。 Sqlite核心数据
NSURL *url = [NSURL URLWithString:@"ftp://ftp.abc.com/public_html/somefolder/"];
NSLog(@"%@", [url URLByDeletingLastPathComponent]);
此代码返回文件CoreAPI.sqlite的名称
以上是关于删除NSURL的最后一部分:iOS的主要内容,如果未能解决你的问题,请参考以下文章
从 tableview 部分删除最后一行时,iOS 应用程序崩溃
LINUX PID 1和SYSTEMD PID 0 是内核的一部分,主要用于内进换页,内核初始化的最后一步就是启动 init 进程。这个进程是系统的第一个进程,PID 为 1,又叫超级进程(代码片段