iOS-解析文件名
需要解析文件名。假设我有一张名为pic_1_3_5_4.png的图片。我需要像这样的东西: 类别1-1 类别2-3 类别3-5 类别4-4 我需要将这些值分开。因此,我可以检索或仅检索类别(1,2,3,4)或仅检索项目编号(1,3,5,4) 此外,我需要一些代码来解析不仅仅是四个类别。也许我想要像pic_2_4.png这样的图片。我需要将其解析为: 类别1-2iOS-解析文件名,ios,cocoa-touch,Ios,Cocoa Touch,需要解析文件名。假设我有一张名为pic_1_3_5_4.png的图片。我需要像这样的东西: 类别1-1 类别2-3 类别3-5 类别4-4 我需要将这些值分开。因此,我可以检索或仅检索类别(1,2,3,4)或仅检索项目编号(1,3,5,4) 此外,我需要一些代码来解析不仅仅是四个类别。也许我想要像pic_2_4.png这样的图片。我需要将其解析为: 类别1-2 Category2-4尝试下面的代码,其结果将是一个包含所有您需要的组件的数组。此外,您将在第0个索引处获得pic,您可以相应地跳过或管
Category2-4尝试下面的代码,其结果将是一个包含所有您需要的组件的数组。此外,您将在第0个索引处获得pic,您可以相应地跳过或管理该索引:
NSArray *resultArray = [yourString componentsSeparatedByString:@"_"];
对于此特定请求,您可以检索名为CategoryX-Y的字符串列表,如下所示:
- (NSArray *) listNamesFromFileName:(NSString *) fileName
{
NSArray *split = [[fileName stringByDeletingPathExtension] componentsSeparatedByString:@"_"];
//which will result in the following list : "pic","1","2",...
//then build the resulting array
if(split.count > 1)
{
NSMutableArray *result = [NSMutableArray array];
//starting from 1 to skip "pic"
for(int i = 1;i < split.count ;i++)
{
NSString *value = [split objectAtIndex:i];
//Category1 - 3
NSString *valueString = [NSString stringWithFormat:@"Category%d - %@",i,value];
[result addObject:valueString];
}
return result;
}
return nil;
}
-(NSArray*)列表名称fromFileName:(NSString*)文件名
{
NSArray*split=[[fileName stringByDeletingPathExtension]组件由字符串分隔:@“”];
//这将导致以下列表:“pic”、“1”、“2”,。。。
//然后构建结果数组
如果(split.count>1)
{
NSMutableArray*结果=[NSMutableArray];
//从1开始跳过“pic”
对于(int i=1;i
我想这就回答了你关于文件名每一个长度的问题:你应该从
NSString
的componentsSeparatedByString
方法开始。你尝试了什么?你想让我们为你写代码吗?