2011-03-17 19 views
7

सहेजने के लिए उपयोग की जाने वाली एक अद्वितीय स्ट्रिंग बनाएं Iphone के लिए एक एप्लिकेशन बना रहा हूं। मैं आइपॉड लाइब्रेरी को स्कैन करता हूं और सभी एल्बम कला लाता हूं। मुझे एक अद्वितीय स्ट्रिंग बनाने का एक तरीका चाहिए ताकि जब मैं एल्बम निर्देशिका को दस्तावेज़ निर्देशिका में सहेज रहा हूं, तो प्रत्येक फ़ाइल का एक अद्वितीय नाम होता है। क्या कोई अद्वितीय स्ट्रिंग बनाने के बारे में जानता है? अग्रिम में धन्यवाद।डेटा

उत्तर

0

मेरे पास कोड नहीं है, लेकिन आप एल्बम कला से MD5 हैश कोड उत्पन्न कर सकते हैं। यह एक अद्वितीय स्ट्रिंग के करीब होगा। हालांकि यह एक बदसूरत स्ट्रिंग होगा।

14

की जाँच करें मैं इस कोड का उपयोग करें:

+ (NSString *)getUniqueFilenameInFolder:(NSString *)folder forFileExtension:(NSString *)fileExtension { 
    NSFileManager *fileManager = [NSFileManager defaultManager]; 
    NSArray *existingFiles = [fileManager contentsOfDirectoryAtPath:folder error:nil]; 
    NSString *uniqueFilename; 

    do { 
     CFUUIDRef newUniqueId = CFUUIDCreate(kCFAllocatorDefault); 
     CFStringRef newUniqueIdString = CFUUIDCreateString(kCFAllocatorDefault, newUniqueId); 

     uniqueFilename = [[folder stringByAppendingPathComponent:(NSString *)newUniqueIdString] stringByAppendingPathExtension:fileExtension]; 

     CFRelease(newUniqueId); 
     CFRelease(newUniqueIdString); 
    } while ([existingFiles containsObject:uniqueFilename]); 

    return uniqueFilename; 
} 

शायद यह किसी को मदद मिलती है। :-)

ध्यान रखें, यह अद्वितीय फ़ाइल का पूरा पथ लौटाता है। आप फ़ाइल नाम वापस करने के लिए कुछ छोटे बदलाव जोड़ना चाहेंगे। उदाहरण के लिए यदि आप इसे कहीं भी जारी रखना चाहते हैं।

+0

+1 बेहद उपयोगी –

संबंधित मुद्दे