شمل (لغة الترميز الموسعة) هي لغة ترميز تستخدم لتخزين ونقل البيانات. إنه أحد أكثر التنسيقات شيوعا لتبادل المعلومات بين الأنظمة المختلفة. ومع ذلك ، يمكن أن يكون العمل مع شمل مهمة صعبة ، وخاصة للمبتدئين.
في هذه المقالة ، سوف ننظر إلى دليل مفصل لتحليل شمل وتقديم أمثلة التعليمات البرمجية في لغات البرمجة المختلفة. سنخبرك عن الأساليب والأدوات التي ستساعدك على التعامل مع هذه المهمة.
هناك عدة طرق لتحليل شمل ، بما في ذلك استخدام وظائف مدمجة في مختلف لغات البرمجة والمكتبات والأدوات. سننظر في بعضها ونتحدث عن مزايا وعيوب كل نهج.
لا يهم لغة البرمجة التي تستخدمها أو الأداة التي تفضلها – ستجد في هذه المقالة نصائح وأمثلة مفيدة ستساعدك على تحليل شمل بنجاح.
- الوصف والمبادئ الأساسية من شمل
- اختيار أدوات تحليل شمل
- تحليل شمل باستخدام ساكس
- تحليل شمل باستخدام دوم
- أمثلة على تحليل ملفات شمل
- بايثون
- جافا
- جافا سكريبت
- إخراج البيانات ومعالجة الأخطاء أثناء تحليل شمل
- إخراج البيانات
- معالجة الأخطاء
- سؤال وجواب
- ما المكتبات يمكن استخدامها لتحليل شمل?
- كيف أقرأ ملف شمل باستخدام مكتبة شمل?
- هل من الممكن تحليل ملف شمل باستخدام شمل.وحدة إتري.إليمنتري من مكتبة بايثون القياسية?
- كيفية معالجة مستند شمل باستخدام شمل.دوم.وحدة مصغرة?
- كيفية معالجة ملفات شمل كبيرة باستخدام شمل.وحدة ساكس?
الوصف والمبادئ الأساسية من شمل
شمل (لغة الترميز الموسعة) هي لغة ترميز تستخدم لوصف وتخزين البيانات المنظمة. إنه تنسيق عالمي لتبادل المعلومات بين التطبيقات والأنظمة الأساسية المختلفة.
المبادئ الأساسية ل شمل:
- التمدد: شمل يسمح لك لإنشاء العلامات الخاصة بك وتحديد بنية الوثيقة الخاصة بك. وهذا يجعل شمل مرنة جدا وقابلة للتكيف مع الاحتياجات والمتطلبات المختلفة.
- الهيكلة: يتم تنظيم مستند شمل في هيكل هرمي باستخدام العلامات التي تؤطر البيانات. تشير العلامات إلى نوع البيانات وتحدد علاقاتها المنطقية داخل المستند.
- تنظيم البيانات: شمل يسمح لك لهيكلة البيانات باستخدام العناصر والسمات. تقوم العناصر بتأطير البيانات ، وتوفر السمات معلومات إضافية حول البيانات.
- استقلال النظام الأساسي: شمل هو تنسيق بيانات مستقل عن النظام الأساسي. هذا يعني أن البيانات المقدمة بتنسيق شمل يمكن معالجتها ونقلها بسهولة بين الأنظمة الأساسية وأنظمة التشغيل المختلفة.
مثال على مستند شمل:
البرمجة في بايثون
إيفان إيفانوف
2020
تطوير الويب
آنا بتروفا
2019
في هذا المثال ، يمثل مستند شمل مجموعة من الكتب. يحتوي كل كتاب على معرف فريد خاص به (سمة معرف) ويحتوي على معلومات حول عنوان الكتاب (عنصر العنوان) والمؤلف (عنصر المؤلف) وسنة الإصدار (عنصر السنة).
شمل هو أداة قوية ومريحة لتبادل وتخزين البيانات المنظمة. باستخدامه ، يمكنك بسهولة تنظيم البيانات ونقلها بين الأنظمة والتطبيقات المختلفة.
اختيار أدوات تحليل شمل
عند تحليل مستندات شمل ، يصبح من الضروري اختيار الأداة المناسبة التي ستتعامل مع المهمة. هناك العديد من الأدوات الشائعة التي يمكن استخدامها لهذا الغرض:
- دوم (نموذج كائن المستند) هي واحدة من الطرق الأكثر شيوعا ومريحة للعمل مع شمل في العديد من لغات البرمجة. يقرأ دوم مستند شمل بأكمله في الذاكرة كشجرة من الكائنات ، مما يجعل من السهل الوصول إلى العناصر والسمات.
- ساكس (أبي بسيطة ل شمل) هو وسيلة أسرع وأكثر كفاءة لتحليل شمل ، وخاصة بالنسبة للملفات الكبيرة. على عكس دوم ، ساكس لا يقرأ المستند بأكمله في الذاكرة ، ولكن تقارير الأحداث عند عبور المستند. وهذا يجعله الخيار الأفضل لاستخراج المعلومات بسهولة من شمل دون الحاجة إلى تغييرات على المستند.
- ستاكس (تدفق أبي ل شمل) - يوفر طريقة بديلة لمعالجة شمل ، والعمل معها على مبدأ معالجة تدفق. ويوفر القدرة على قراءة وكتابة وثائق شمل بالتتابع ، ومعالجتها على الفور بعد قراءة كل عنصر أو سمة أو مكتوبة.
- زملبول هو أداة تحليل شمل أخرى باستخدام نهج سحب تحليل. على عكس ساكس و ستاكس ، فإنه يعمل على أساس تحليل شمل على مستوى منخفض ، مما يسمح لك للحصول على سيطرة أكثر دقة على عملية التحليل.
يعتمد اختيار الأداة المناسبة على متطلبات وخصائص مشروع معين. إذا كنت بحاجة إلى تمثيل كامل لمستند شمل بأكمله في الذاكرة ، ثم دوم هو خيار جيد. إذا كنت تعمل مع ملفات كبيرة وتحتاج فقط لاستخراج المعلومات ، فمن الأفضل استخدام ساكس أو ستاكس. إذا كنت بحاجة إلى مزيد من التحكم المرن في عملية التحليل ، فيمكنك التفكير في زملبول.
في نهاية المطاف ، يتم تحديد اختيار أداة تحليل شمل من قبل متطلبات المشروع ، ومستوى التعقيد وسرعة العمل ، لذلك دراسة بعناية كل أداة واختيار واحد الذي يناسب مهمتك.
تحليل شمل باستخدام ساكس
تحليل شمل باستخدام أبي بسيطة ل شمل (ساكس) هو نهج بديل لتحليل هيكل ومحتوى وثائق شمل. على عكس محلل دوم ، الذي يقوم بتحميل مستند شمل بأكمله في الذاكرة ويبني طريقة عرض الشجرة ، يعمل محلل ساكس مع مستند شمل بالتتابع.
بدلا من إنشاء بنية مستند ، يجتاز المحلل اللغوي ساكس مستند شمل ويولد أحداثا لكل عنصر أو سمة أو عقدة نصية. تسمح لك هذه الأحداث بتحليل ومعالجة عنصر مستند شمل حسب العنصر.
للعمل مع محلل ساكس ، تحتاج إلى إنشاء فئة التي تنفذ واجهة ديفولثاندلر من مكتبة ساكس. في هذه الفئة ، يمكنك تعريف أساليب معالج لمختلف الأحداث محلل ساكس ، مثل بداية وثيقة ، بداية عنصر ، عقدة النص ، الخ.
باستخدام محلل ساكس ، يمكنك قراءة وتحليل وثائق شمل كبيرة مع الحد الأدنى من استهلاك الذاكرة. هذا النهج مفيد بشكل خاص عندما تحتاج إلى معالجة كمية هائلة من البيانات ، وليس هناك حاجة لتخزين جميع المعلومات في الذاكرة.
مثال على استخدام محلل ساكس:
- }
@تجاوز
الأحرف باطلة العامة (شار[] تش ، إنت البداية ، إنت طول) يلقي ساكسكسيبتيون {
// يتم تنفيذ الكود عند اكتشاف عقدة نصية
}
}
إنشاء مثيل محلل ساكس وتثبيت فئة معالج:
مصنع ساكسارسيرفاكتوري = مصنع ساكسارسيرفاكتوري.نيوينستانس();
محلل ساكسبارسر = مصنع.نيوساكسبارسر();
زملهاندلر معالج = جديد زملهاندلر();
محلل.تحليل (ملف جديد ("مثال.شمل") ، معالج);
في المثال أعلاه ، نقوم بإنشاء مثيل من محلل ساكس باستخدام مصنع ساكسبارسيرفاكتوري ، ثم قم بتثبيت فئة معالج زملهاندلر للتعامل مع أحداث المحلل اللغوي. ثم نسمي طريقة التحليل ، ويمررها إشارة إلى ملف شمل وفئة المعالج. محلل يدعو باستمرار أساليب معالج اعتمادا على أحداث محلل ساكس.
وبالتالي ، يوفر محلل ساكس وسيلة فعالة وخفيفة الوزن لتحليل وثائق شمل. ومن المفيد بشكل خاص عند العمل مع الملفات الكبيرة أو تيارات البيانات شمل.
تحليل شمل باستخدام دوم
دوم (نموذج كائن المستند) هو طريقة قياسية لتمثيل مستند شمل ككائنات يمكن التلاعب بها باستخدام رمز البرنامج. تحليل شمل باستخدام دوم يجعل من السهل العثور على وتعديل واستخراج المعلومات من وثيقة شمل.
لبدء العمل مع تحليل شمل باستخدام دوم ، تحتاج إلى تحميل مستند شمل في الذاكرة وإنشاء بنية دوم. في لغة برمجة جافا ، يمكن القيام بذلك باستخدام فئات دوكومبوتيلدرفاكتوري و دوكومبوتيلدر:
كومباكتبويلدرفاكتوري فاكتوري = كومباكتبويلدرفاكتوري.نيوينستانس();
منشئ المستندات = المصنع.نيودوكومنتبويلدر();
وثيقة وثيقة = باني.تحليل (ملف جديد ("ملف.شمل"));
هنا نقوم بإنشاء مصنع لإنشاء كائنات دوكومنتيبويلدر ، والتي يتم استخدامها بعد ذلك لتحميل مستند شمل وإنشاء كائن مستند. الآن يمكننا البدء في الذهاب من خلال شجرة شمل واستخراج المعلومات منه.
على سبيل المثال ، ضع في اعتبارك مستند شمل التالي:
هاري بوتر وحجر الفيلسوف
بقلم جي كي رولينج
1997
سيد الخواتم: زمالة الخاتم
بقلم جي آر آر تولكين
1954
يمكننا الحصول على معلومات حول كل كتاب في مستند شمل باستخدام كائن المستند والطرق التي يوفرها دوم:
قائمة الكتب نوديليست = وثيقة.جيتليمينتسبيتاغنام ("كتاب");
ل (إنت أنا = 0 ؛ أنا < قائمة الكتب.الحصول على الطول () ؛ أنا {) {
عقدة بوكنود = قائمة الكتب.البند (ط);
إذا (بوكنود.جيتنوديتيب () = = عقدة.عنصر_العقد) {
كتاب العنصرعنصر = (عنصر) كتاب;
عنوان السلسلة = عنصر الكتاب.جيتليمنتس بيتاجنام ("العنوان").البند (0).جيتكستكونتينت();
مؤلف السلسلة = بوكليمنت.جيتليمنتس بيتاجنام ("المؤلف").البند (0).جيتكستكونتينت();
كثافة العمليات السنة = عدد صحيح.بارسينت (بوكليمنت.جيتليمنتس بيتاجنام ("السنة").البند (0).جيتكستكونتينت());
النظام.خارج.برينتلن ("I" + (أنا + 1)+": "+ العنوان + " ("+المؤلف + " ، " + السنة+")");
}
}
في هذا المثال ، نذهب من خلال قائمة الكتب ، واستخراج المعلومات حول كل كتاب ، وعرضها على الشاشة. للحصول على قيم العناصر ، نستخدم أساليب جيتليمنتسبياغنام و جيتكستكونتينت من كائن العنصر. سنقوم أيضا بتحويل قيمة السنة إلى عدد صحيح باستخدام طريقة بارسينت.
يوفر دوم قدرات واسعة لمعالجة وثائق شمل ، بما في ذلك البحث ، إضافة ، تعديل ، وحذف العناصر والسمات. ومع ذلك ، إذا كانت وثيقة شمل كبيرة جدا أو معقدة ، وذلك باستخدام دوم يمكن أن يؤدي إلى ارتفاع استهلاك الذاكرة وبطء الأداء. في مثل هذه الحالات ، فمن المستحسن النظر في استخدام أساليب تحليل شمل الأخرى ، مثل ساكس أو ستاكس.
أمثلة على تحليل ملفات شمل
يمكنك تحليل ملف شمل باستخدام أدوات البرمجيات المختلفة والمكتبات التي تقدمها لغات البرمجة المختلفة. فيما يلي أمثلة على تحليل ملفات شمل باستخدام العديد من لغات البرمجة الشائعة.
بايثون
بيثون لديها العديد من المكتبات للعمل مع شمل ، مثل شمل ، شمل.(إيتري).إليمنتري و شمل.دوم. دعونا ننظر إلى مثال على استخدام مكتبة شمل:
استيراد لكسمل.إتري كما وآخرون
# فتح ملف شمل
شجرة = وآخرون.تحليل ('مثال.شمل')
الجذر = شجرة.جيتروت()
# تحليل وإخراج البيانات
for child in root:
print(child.tag, child.text)
import javax.xml.bind.Unmarshaller;
import java.io.File;
// Класс, соответствующий XML-документу
@XmlRootElement
public class Example {
@XmlElement
private String element1;
@XmlAttribute
private String attribute1;
}
الطبقة العامة الرئيسية {
العامة ثابت الفراغ الرئيسي (سلسلة[] الحجج) {
محاولة {
/ /ax جاكسب
جاكسبكونتيكست جاكسبكونتيكست = جاكسبكونتيكست.نيوينستانس (مثال.فئة);
// Unmar غير مراقب
غير مسجل غير مسجل = جاكسكونتيكست.كريتونمارشالر();
/ /l شمل-файла
مثال مثال = (مثال) غير مسجل.أونمارشال (ملف جديد ("مثال.شمل"));
// Вывод данных
النظام.خارج.برينتلن (مثال.الحصول علىيوان 1());
- ه. برينتستاكتريس();
- }
- responseXML
. Ниже приведен пример использования JavaScript для парсинга XML-файла:
var xhttp = new XMLHttpRequest();
- xhttp.onreadystatechange = function() {
- عنصر فار = عناصر [أنا];
- شتب.فتح ("الحصول على" ، " مثال.شمل " ، صحيح);
شتب.إرسال();
وبالتالي ، يمكن تحليل ملفات شمل في لغات البرمجة المختلفة واستخدام المكتبات والأدوات المختلفة. يعتمد اختيار نهج معين على متطلبات المشروع وتفضيلات المطور.
إخراج البيانات ومعالجة الأخطاء أثناء تحليل شمل
عند تحليل ملفات شمل ، من المهم ليس فقط لاستخراج البيانات اللازمة بشكل صحيح ، ولكن أيضا للتعامل مع الأخطاء المحتملة. تتم مناقشة طرق إخراج البيانات ومعالجة الأخطاء عند العمل مع شمل أدناه.
إخراج البيانات
بعد تحليل ناجح لملف شمل ، فمن الضروري إخراج البيانات المستخرجة في شكل مناسب. يمكن استخدام طرق مختلفة للقيام بذلك:
عرض القيم على الشاشة: أبسط طريقة هي استخدام أمر الإخراج ، على سبيل المثال,
طباعة()
. هذا مفيد عندما تحتاج إلى التحقق بسرعة من محتويات المتغيرات أو عناصر شمل.
تكوين صفحة هتمل: للحصول على عرض تقديمي أكثر جمالا وتنظيما للبيانات ، يمكنك إنشاء صفحة هتمل باستخدام العلامات المناسبة (على سبيل المثال,
,
,