stify"> Якщо файл imsmanifest. xml завантажений - починаємо аналіз його структури на коректність, знаходимо шлях до файлу runtime. xml
{reader = null;. Collections. ArrayList simList = new System. Collections. ArrayList ();
{= new XmlTextReader (openFileDialog1. FileName);. WhitespaceHandling = WhitespaceHandling. None;// пропускаємо порожні вузли (reader. Read ()) (reader. NodeType == XmlNodeType. Element) (reader. Name == "resource")
{(int i = 0; i
{(reader. GetAttribute (i) == "sco")
{(reader. Read () && reader. Name == "file") (reader. GetAttribute (0). IndexOf ("runtime. xml")! = - 1 )
{name = openFileDialog1. FileName. Replace ("imsmanifest. Xml", "") + "" + reader. GetAttribute (0). Replace ("/", "");
listBox1. Items. Add (name);
}
}
}
}
}
Якщо шлях до файлу runtime. xml знайдений, починаємо його аналіз, в який входитиме створення двох масивів для запитань і відповідей, пропуск порожніх вузлів, пошук структури тестів на відповідність і запис їх в масив.
System. Collections. ArrayList questionsList = new System. Collections. ArrayList ();. Collections. ArrayList answersList = new System. Collections. ArrayList ();
{= new XmlTextReader (listBox1. Items [0]. ToString ());. WhitespaceHandling = WhitespaceHandling. None; (reader. Read ()) (reader. NodeType == XmlNodeType. Element) (reader. Name == "q_question")
{(reader. Read ())
{(reader. Name == "q_variants")
{(reader. Read ())
{(reader. Name == "item")
{(reader. Read ())
{(reader. Name == "q_target")
{. Add (stripTags (reader. ReadString (). ToString ()));
} if (reader. Name == "q_bullet")
{. Add (stripTags (reader. ReadString (). ToString ()));
}
}
}
}
}
}
}
}
На наступному етапі аналізу Scorm пакета оператор може внести свої корективи в опитування і відповіді. Для цього на формі є два поля введення, куди виводиться поточне питання і поточний відповідь і дві кнопки зберегти, для питання і відповіді. br/>
private void button1_Click_1 (object sender, EventArgs e)
{_fs = new FileStream (filename, FileMode. Open); _reader = new StreamReader (_fs); str = ""; = _reader. ReadTo...