如何在文档目录中保存唯一的图像名称

时间:2013-06-05 13:04:59

标签: ios

在我的ios应用程序中,我遇到了一项任务。我需要从相机拍摄照片并将其保存在文档目录中。问题是我想要保存图像的唯一名称。我试图用名称添加当前时间。但是保存图像有长度问题。请告诉我如何完成这项任务。

由于

5 个答案:

答案 0 :(得分:7)

给出类似NString *name = @"Lake"的建议名称:

NSString *myUniqueName = [NSString stringWithFormat:@"%@-%u", name, (NSUInteger)([[NSDate date] timeIntervalSince1970]*10.0)];

编辑:更新,以便复制的唯一机会是相同的原始名称,在第一个100毫秒内提交(在我看来几乎不可能,如果这是关注使用100而不是10)

答案 1 :(得分:3)

-(NSString*)getFilePathToSaveUnUpdatedImage
{
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *directory = [paths objectAtIndex:0];

    for (int i = 0 ; TRUE ; i++)
    {
        if(![[NSFileManager defaultManager]fileExistsAtPath:[NSString stringWithFormat:@"%@/UnUpdatedItems/Image%d.png", directory , i]])
            return [NSString stringWithFormat:@"%@/UnUpdatedItems/Image%d.png", directory , i];
    }
}

答案 2 :(得分:3)

尝试这样设置格式化日期并保存图像

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];

[dateFormat setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

NSDate *now = [NSDate date];

NSString *theDate = [dateFormat stringFromDate:now];

[data writeToFile:[NSString stringWithFormat:@"%@.png",theDate] atomically:YES];

答案 3 :(得分:1)

使用这行代码来命名。

[NSDateFormatter localizedStringFromDate:[NSDate date] dateStyle:NSDateFormatterMediumStyle timeStyle:NSDateFormatterShortStyle]]

这适用于同样的问题。

答案 4 :(得分:0)

-(NSString*)getImagePathName
{
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *directory = [paths objectAtIndex:0];

    for (int i = 0 ; TRUE ; i++)
    {
        if(![[NSFileManager defaultManager]fileExistsAtPath:[NSString stringWithFormat:@"%@/Image%d.png", directory , i]])
            return [NSString stringWithFormat:@"%@/Image%d.png", directory , i];
    }
}