public static void OptionsWrite()
{
XmlWriterSettings settings = new XmlWriterSettings();
// включаем отступ для элементов XML документа
// (позволяет наглядно изобразить иерархию XML документа)
settings.Indent = true;
settings.IndentChars = " "; // задаем отступ, здесь у меня 4 пробела
// задаем переход на новую строку
settings.NewLineChars = "\n";
// Нужно ли опустить строку декларации формата XML документа
// речь идет о строке вида "<?xml version="1.0" encoding="utf-8"?>"
settings.OmitXmlDeclaration = false;
using (XmlWriter output = XmlWriter.Create("options.xml", settings))
{
output.WriteStartElement("Options");
#region Пути к установкам, куда будем распаковывать архивы дистров
output.WriteStartElement("PathToFolderWhereToInstall");
output.WriteStartElement("edition"); output.WriteAttributeString("title", "BB");
output.WriteElementString("mysql", OptionsForm.form.tbPathBB_mysql.Text);
output.WriteEndElement();
output.WriteEndElement();
#endregion
#region Урлы установок
output.WriteStartElement("URLS");
output.WriteStartElement("edition"); output.WriteAttributeString("title", "BB");
output.WriteElementString("mysql", OptionsForm.form.tbURL_BB_mysql.Text.Trim());
output.WriteEndElement();
output.WriteEndElement();
#endregion
#region строки подключения к базам
output.WriteStartElement("ConnectionString");
output.WriteElementString("mysql", OptionsForm.form.tbConString_mysql.Text.Trim());
output.WriteElementString("mysql_port", OptionsForm.form.tbConString_mysql_port.Text.Trim());
output.WriteEndElement();
#endregion
//настройки фаерфокса
output.WriteStartElement("firefox_options");
output.WriteElementString("pathToFirefoxExe", OptionsForm.form.tbPathToFfExe.Text.Trim());
output.WriteElementString("pathToFirefoxProfile", OptionsForm.form.tbPathToFfProfile.Text.Trim());
output.WriteEndElement();
//данные последнего проверенного урла
output.WriteStartElement("CheckUrls_options");
output.WriteElementString("url", MainForm.form.tbCheckUrlsUrlToCheck.Text.Trim());
output.WriteElementString("login", MainForm.form.tbCheckUrlsLogin.Text.Trim());
output.WriteElementString("password", MainForm.form.tbCheckUrlsPass.Text.Trim());
output.WriteEndElement();
#region пользователи
output.WriteStartElement("users");
output.WriteStartElement("user"); output.WriteAttributeString("profile", "Admin");
output.WriteElementString("Name", OptionsForm.form.tb_usr_Admin_Name.Text.Trim());
output.WriteElementString("LastName", OptionsForm.form.tb_usr_Admin_LastName.Text.Trim());
output.WriteElementString("Email", OptionsForm.form.tb_usr_Admin_Email.Text.Trim());
output.WriteElementString("Login", OptionsForm.form.tb_usr_Admin_Login.Text.Trim());
output.WriteElementString("Password", OptionsForm.form.tb_usr_Admin_Password.Text.Trim());
output.WriteElementString("Avatar", OptionsForm.form.tb_usr_Admin_Ava.Text.Trim());
output.WriteEndElement();
output.WriteStartElement("user"); output.WriteAttributeString("profile", "Intra1");
output.WriteElementString("Name", OptionsForm.form.tb_usr_Intra1_Name.Text.Trim());
output.WriteElementString("LastName", OptionsForm.form.tb_usr_Intra1_LastName.Text.Trim());
output.WriteElementString("Email", OptionsForm.form.tb_usr_Intra1_Email.Text.Trim());
output.WriteElementString("Login", OptionsForm.form.tb_usr_Intra1_Login.Text.Trim());
output.WriteElementString("Password", OptionsForm.form.tb_usr_Intra1_Password.Text.Trim());
output.WriteElementString("Avatar", OptionsForm.form.tb_usr_Intra1_Ava.Text.Trim());
output.WriteEndElement();
output.WriteStartElement("user"); output.WriteAttributeString("profile", "Intra2");
output.WriteElementString("Name", OptionsForm.form.tb_usr_Intra2_Name.Text.Trim());
output.WriteElementString("LastName", OptionsForm.form.tb_usr_Intra2_LastName.Text.Trim());
output.WriteElementString("Email", OptionsForm.form.tb_usr_Intra2_Email.Text.Trim());
output.WriteElementString("Login", OptionsForm.form.tb_usr_Intra2_Login.Text.Trim());
output.WriteElementString("Password", OptionsForm.form.tb_usr_Intra2_Password.Text.Trim());
output.WriteElementString("Avatar", OptionsForm.form.tb_usr_Intra2_Ava.Text.Trim());
output.WriteEndElement();
output.WriteEndElement();
#endregion
output.WriteEndDocument();
// Сбрасываем буферизированные данные
output.Flush();
// Закрываем файл, с которым связан output
output.Close();
}
}