Я написал программу планирования заданий для обучения. В настоящее время я сохраняю запланированные задачи так же, как обычный текст, а затем анализирую его с помощью Regex. Это выглядит грязным (код мудрый) и не очень согласован.
Я хотел бы загружать запланированные задачи из файла XML вместо этого, я искал довольно много, чтобы найти некоторые решения, но я не мог заставить его работать так, как я хотел.
Я написал XML файл, структурированный таким образом, чтобы хранить мои данные в:
<Tasks>
<Task>
<Name>Shutdown</Name>
<Location>C:/WINDOWS/system32/shutdown.exe</Location>
<Arguments>-s -f -t 30</Arguments>
<RunWhen>
<Time>8:00:00 a.m.</Time>
<Date>18/03/2011</Date>
<Days>
<Monday>false</Monday>
<Tuesday>false</Tuesday>
<Wednesday>false</Wednesday>
<Thursday>false</Thursday>
<Friday>false</Friday>
<Saturday>false</Saturday>
<Sunday>false</Sunday>
<Everyday>true</Everyday>
<RunOnce>false</RunOnce>
</Days>
</RunWhen>
<Enabled>true</Enabled>
</Task>
</Tasks>
То, как я хотел бы проанализировать данные, выглядит так:
- Открыть Tasks.xml
- Загрузите первый тег Task.
- В этой задаче получить значения тегов Name, Location и Arguments.
- Затем откройте тег RunWhen и извлеките значения тегов Time и Date.
- После этого откройте тег Days и найдите значение каждого отдельного тега внутри.
- Получить значение Enabled.
- Загрузите следующую задачу и повторите шаги 3 → 7 до тех пор, пока все теги Задачи в Задачах не будут проанализированы.
Я очень уверен, что вы можете сделать это таким образом, я просто не могу разобраться, так как существует много разных способов сделать что-то в XML. Я немного перегружен. Но что я до сих пор делал, что я, скорее всего, буду использовать XPathDocument и XPathNodeIterator правильно?
Если кто-то может показать мне пример или объяснить мне, как это будет сделано, я был бы очень счастлив.