09 марта 2016г.
В Тувинском государственном университете (ТувГУ) имеется конструктор электронных учебных изданий [1], c помощью которого преподаватели создают свои электронные учебно-методические пособия. У некоторых авторов возникают проблемы определения объема созданного пособия, количества файлов и других характеристик электронного пособия.
Хотя, на самом деле, это совсем не трудно, нужно просто вызвать окно свойства папки, где находится электронное учебное пособие, и найти там необходимые характеристики (см. Рисунок 1).
Иногда путают объем и файлы
самого конструктора с объемом
и файлами электронного учебного издания.
Поэтому был создан новый конструктор электронных учебных изданий с помощью языка программирования
С#.
Одной из особенностей языка
С# является
то, она основана на платформе
Microsoft .NET Framework. Это и отличает язык С# от других языков программирования. .NET Framework — программная платформа, выпущенная фирмой Microsoft в 2002 году. Она обеспечивает свободу программисту в создании программ,
способных эффективно выполняться на различных типах ЭВМ.
В языке С# имеется специальная библиотека классов System.IO, позволяющая работать
с папками и файлами [2]. Такие
библиотеки в языке С# называется пространствами имен. С помощью классов данного пространства можно написать следующий
код консольной программы:
using System; using System.IO;
using System.Collections; public class Class1
{
static void Main()
{
string currentDirName = System.IO.Directory.GetCurrentDirectory(); int d = currentDirName.Length, kol_file=0;
long len_file = 0;
string dir = currentDirName.Substring(0,d-15)+"book"; System.IO.Directory.SetCurrentDirectory(dir); Console.WriteLine("Текущая папка:\n" + dir);
string[] List = Directory.GetFiles(dir, "~*.*");
foreach (string f
in List) { File.Delete(f); } string
[] files = System.IO.Directory.GetFiles(dir); kol_file = files.Length;
foreach (string s in files)
{
System.IO.FileInfo fi = null;
fi = new System.IO.FileInfo(s); len_file
= len_file + fi.Length;
}
Console.WriteLine("\nПодкаталоги:");
string[] subdirectoryEntries
= Directory.GetDirectories(dir); foreach
(string subdirectory in subdirectoryEntries)
{
files = System.IO.Directory.GetFiles(subdirectory); Console.WriteLine(subdirectory+" - " + files.Length); kol_file = kol_file
+ files.Length;
foreach (string s in files)
{
System.IO.FileInfo fi = null;
fi = new System.IO.FileInfo(s); len_file = len_file
+ fi.Length;
}
}
files = System.IO.Directory.GetFiles(dir+@"\help\ini"); foreach
(string s in files)
{
System.IO.FileInfo fi = null;
fi = new System.IO.FileInfo(s); len_file
= len_file + fi.Length;
}
kol_file = kol_file
+ files.Length;
files = System.IO.Directory.GetFiles(dir + @"\help\ini\registracia.files"); foreach
(string s in files)
{
System.IO.FileInfo fi = null;
fi = new System.IO.FileInfo(s); len_file
= len_file + fi.Length;
}
kol_file = kol_file
+ files.Length;
Console.WriteLine("Количество файлов в папке - {0}", (kol_file)); Console.WriteLine("Объем файлов - " + (len_file/1024/1024) + " Mb" ); Console.WriteLine("Press any key to exit.");
Console.ReadKey();
}
Результат этой программы можно увидеть на Рисунке
2.
Используя эти классы в приложении под Windows, можно определить объем и файлы в электронном издании. Кроме этого, конструктор выдает
также количество рисунков и количество строк в библиографии электронного издания (см. Рисунок
3.). Так как файлы электронного издания имеют формат web-документа, то с ними можно работать в языке С#, как с текстовыми файлами.
То есть просматривать их содержимое и производить поиск нужного
контента в зависимости от поставленной задачи. В данном
случае можно найти рисунок по тегу
, а библиографию электронного издания по тегу
со свойством
class=MsoListParagraphCxSp.
Возможности языка C# позволяли решить все проблемы при создании новой версии конструктора электронных изданий
Тувинского государственного университета.
Список литературы
1. Далаа С.М. Программная оболочка создания
ЭУИ //Научные тр. ТывГУ. – 2010. – Вып. VIII. - Т.II. – С.100- 101.
2.
Шилдт Г. С# 4.0: полное руководство.: Пер. с англ. — М.: ООО "И.Д. Вильяме", 2011. — 1056 с.