الحصول على ملف XML من عنوان URL إلى كائن NSDATA؟
-
19-09-2019 - |
سؤال
أحتاج إلى تحميل ملف .xml من عنوان URL إلى كائن NSDATA لمزيد من التحليل مع بعض المكتبات التي أمتلكها بالفعل، (لكنهم يسألونني ملف .xml باسم Nsdata)، كيف يمكنني القيام بذلك؟
سيكون تنسيق عنوان URL شيء مثل هذا:
المحلول
على افتراض أنه بيانات UTF-8. إذا كان محليا (أي داخل الحزمة) شيء مثل:
NSError *error;
NSString* contents = [NSString stringWithContentsOfFile:PATHTOLOCALFILE
encoding:NSUTF8StringEncoding
error:&error];
NSData* xmlData = [contents dataUsingEncoding:NSUTF8StringEncoding];
إذا كان على موقع بعيد، فيجب أن يفعل شيء من هذا القبيل. لاحظ أنه متزامن. إذا كنت بحاجة إلى التحميل غير المتزامن، فستضطر إلى جعل الشبكات الخاصة بك أو استخدام شيء مثل AsihttpConnection لتنزيل الملف أولا.
NSError *error;
NSString* contents = [NSString stringWithContentsOfUrl:[NSURL URLWithString:URLOFXMLFILE]
encoding:NSUTF8StringEncoding
error:&error];
NSData* xmlData = [contents dataUsingEncoding:NSUTF8StringEncoding];
نصائح أخرى
تستطيع الاتصال NSData
'س - (id)initWithContentsOfURL:(NSURL *)aURL
نمط. مزيد من المعلومات هنا:
لا تنتمي إلى StackOverflow