मेरे पास लगभग 60 छवियां हैं जिन्हें मैं कोर डेटा में स्टोर करना चाहता हूं, जिनमें से 30 अवतार हैं और avt_filename_00X.png का उपसर्ग है और उनमें से 30 छोटे हैं और एक अलग उपसर्ग है।उद्देश्य सी में एनएसबंडल से छवि पथ प्राप्त करें?
कोर डेटा/SQLite में बीएलओबी के रूप में सभी छवियों को संग्रहीत करने के बजाय, मैं प्रत्येक छवि के लिए पथ संग्रहीत करना चाहता हूं (उसी तरह आप एक MySQL डेटाबेस के लिए छवि पथ संग्रहीत करेंगे)।
हालांकि मुझे यकीन नहीं है कि एनएसबंडल में मिली छवि के पथ को कैसे पकड़ें।
मैं के माध्यम से NSDocumentDirectory के लिए पथ प्राप्त कर सकते हैं:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSFileManager *fileManager = [NSFileManager defaultManager];
[fileManager fileExistsAtPath:documentsDirectory];
NSLog(@"documentsDirectory = %@", documentsDirectory);
और मैं छवि को लोड और एक सरणी में जोड़ सकते हैं।
if (qty == 0)
{
//NSLog(@"fileToLoad = %@", fileToLoad);
UIImage *img = [[UIImage alloc] initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:fileToLoad ofType:fileExt]];
[self.avtList addObject:img];
[img release];
} else {
// load multiple image into an array
// not coded yet
}
लेकिन, क्या मैं के अनिश्चित हूँ है:
मैं पथ जहां कंप्यूटर NSBundle अंदर एक बार अपनी छवि को पाया कैसे हड़पने करते हैं?
मैं कैसे सुनिश्चित कर सकता हूं कि ऐप डिवाइस पर होने पर पथ काम करेगा?
विचार एक सरणी में संग्रहीत सभी छवियों को प्राप्त करना होगा और फिर उन्हें बाद में कोर डेटा/SQLite पर धक्का देना होगा।
हाँ, यह समझ में आता है। मुझे लगता है कि मैं सिर्फ फाइलनाम को डेटाबेस में संग्रहीत करूंगा और फिर छवि को वापस पकड़ने के लिए बाद में अपने एनएसबंडल कोड का उपयोग करूंगा। – zardon