protected void LoadWebmailSettings()
{
try
{
string filename = Path.Combine(Utils.GetDataFolderPath(), @"Settings\settings.xml");
using (FileStream fs = new FileStream(filename, FileMode.Open, FileAccess.Read))
{
XPathDocument xpathDoc = new XPathDocument(fs);
XPathNavigator xpathNav = xpathDoc.CreateNavigator();
XPathNodeIterator xpathIter = xpathNav.Select("Settings/WindowTitle");
if (xpathIter.MoveNext())
{
this.WindowTitle = xpathIter.Current.Value;
}
this.LicenseKey = "MNWL";
xpathIter = xpathNav.Select("Settings/AdminPassword");
if (xpathIter.MoveNext())
{
this.AdminPassword = xpathIter.Current.Value;
}
xpathIter = xpathNav.Select("Settings/IncomingMailProtocol");
if (xpathIter.MoveNext())
{
if (xpathIter.Current.Value != string.Empty) this.IncomingMailProtocol = (IncomingMailProtocol)int.Parse(xpathIter.Current.Value);
}
xpathIter = xpathNav.Select("Settings/IncomingMailServer");
if (xpathIter.MoveNext())
{
this.IncomingMailServer = xpathIter.Current.Value;
}
xpathIter = xpathNav.Select("Settings/IncomingMailPort");
if (xpathIter.MoveNext())
{
this.IncomingMailPort = int.Parse(xpathIter.Current.Value);
}
xpathIter = xpathNav.Select("Settings/OutgoingMailServer");
if (xpathIter.MoveNext())
{
this.OutgoingMailServer = xpathIter.Current.Value;
}
xpathIter = xpathNav.Select("Settings/OutgoingMailPort");
if (xpathIter.MoveNext())
{
this.OutgoingMailPort = int.Parse(xpathIter.Current.Value);
}
xpathIter = xpathNav.Select("Settings/ReqSmtpAuth");
if (xpathIter.MoveNext())
{
this.ReqSmtpAuth = (string.Compare(xpathIter.Current.Value, "1", true, CultureInfo.InvariantCulture) == 0) ? true : false;
}
xpathIter = xpathNav.Select("Settings/AllowAdvancedLogin");
if (xpathIter.MoveNext())
{
this.AllowAdvancedLogin = (string.Compare(xpathIter.Current.Value, "1", true, CultureInfo.InvariantCulture) == 0) ? true : false;
}
xpathIter = xpathNav.Select("Settings/HideLoginMode");
if (xpathIter.MoveNext())
{
this.HideLoginMode = (LoginMode)short.Parse(xpathIter.Current.Value, CultureInfo.InvariantCulture);
}
xpathIter = xpathNav.Select("Settings/DefaultDomainOptional");
if (xpathIter.MoveNext())
{
this.DefaultDomainOptional = xpathIter.Current.Value;
}
xpathIter = xpathNav.Select("Settings/ShowTextLabels");
if (xpathIter.MoveNext())
{
this.ShowTextLabels = (string.Compare(xpathIter.Current.Value, "1", true, CultureInfo.InvariantCulture) == 0) ? true : false;
}
xpathIter = xpathNav.Select("Settings/AutomaticCorrectLoginSettings");
if (xpathIter.MoveNext())
{
this.AutomaticCorrectLoginSettings = (string.Compare(xpathIter.Current.Value, "1", true, CultureInfo.InvariantCulture) == 0) ? true : false;
}
xpathIter = xpathNav.Select("Settings/EnableLogging");
if (xpathIter.MoveNext())
{
this.EnableLogging = (string.Compare(xpathIter.Current.Value, "1", true, CultureInfo.InvariantCulture) == 0) ? true : false;
}
xpathIter = xpathNav.Select("Settings/AllowAjax");
if (xpathIter.MoveNext())
{
this.AllowAjax = (string.Compare(xpathIter.Current.Value, "1", true, CultureInfo.InvariantCulture) == 0) ? true : false;
}
xpathIter = xpathNav.Select("Settings/MailsPerPage");
if (xpathIter.MoveNext())
{
if (xpathIter.Current.Value != string.Empty) this.MailsPerPage = short.Parse(xpathIter.Current.Value);
}
xpathIter = xpathNav.Select("Settings/AttachmentSizeLimit");
if (xpathIter.MoveNext())
{
if (xpathIter.Current.Value != string.Empty) this.AttachmentSizeLimit = long.Parse(xpathIter.Current.Value);
}
xpathIter = xpathNav.Select("Settings/EnableAttachmentSizeLimit");
if (xpathIter.MoveNext())
{
this.EnableAttachmentSizeLimit = (string.Compare(xpathIter.Current.Value, "1", true, CultureInfo.InvariantCulture) == 0) ? true : false;
}
xpathIter = xpathNav.Select("Settings/MailboxSizeLimit");
if (xpathIter.MoveNext())
{
if (xpathIter.Current.Value != string.Empty) this.MailboxSizeLimit = long.Parse(xpathIter.Current.Value);
}
xpathIter = xpathNav.Select("Settings/EnableMailboxSizeLimit");
if (xpathIter.MoveNext())
{
this.EnableMailboxSizeLimit = (string.Compare(xpathIter.Current.Value, "1", true, CultureInfo.InvariantCulture) == 0) ? true : false;
}
xpathIter = xpathNav.Select("Settings/DefaultTimeZone");
if (xpathIter.MoveNext())
{
if (xpathIter.Current.Value != string.Empty) this.DefaultTimeZone = short.Parse(xpathIter.Current.Value);
}
xpathIter = xpathNav.Select("Settings/DefaultUserCharset");
if (xpathIter.MoveNext())
{
if (xpathIter.Current.Value != string.Empty) this.DefaultUserCharset = int.Parse(xpathIter.Current.Value);
}
xpathIter = xpathNav.Select("Settings/DefaultSkin");
if (xpathIter.MoveNext())
{
this.DefaultSkin = xpathIter.Current.Value;
}
xpathIter = xpathNav.Select("Settings/DefaultLanguage");
if (xpathIter.MoveNext())
{
this.DefaultLanguage = xpathIter.Current.Value;
}
xpathIter = xpathNav.Select("Settings/ViewMode");
if (xpathIter.MoveNext())
{
this.Mode = (ViewMode)int.Parse(xpathIter.Current.Value, CultureInfo.InvariantCulture);
}
xpathIter = xpathNav.Select("Settings/EnableWmServer");
if (xpathIter.MoveNext())
{
this.EnableWmServer = (string.Compare(xpathIter.Current.Value, "1", true, CultureInfo.InvariantCulture) == 0);
}
xpathIter = xpathNav.Select("Settings/WmServerRootPath");
if (xpathIter.MoveNext())
{
this.WmServerRootPath = xpathIter.Current.Value;
}
xpathIter = xpathNav.Select("Settings/WmServerHost");
if (xpathIter.MoveNext())
{
this.WmServerHost = xpathIter.Current.Value;
}
if (this.EnableWmServer)
{
//read webmail.tab
_webmailTab = Utils.ReadWebmailTab(this.WmServerRootPath);
}
}
}
catch (Exception ex)
{
throw new WebMailSettingsException(ex);
}
}
<?xml version="1.0" encoding="utf-8" ?>
- <Settings>
<WindowTitle>MailBee WebMail Lite</WindowTitle>
<AdminPassword>12345</AdminPassword>
<IncomingMailServer>pop.fund500.com</IncomingMailServer>
<IncomingMailPort>110</IncomingMailPort>
<OutgoingMailServer>smtp.fund500.com</OutgoingMailServer>
<OutgoingMailPort>25</OutgoingMailPort>
<ReqSmtpAuth>1</ReqSmtpAuth>
<AllowAdvancedLogin>1</AllowAdvancedLogin>
<HideLoginMode>0</HideLoginMode>
<DefaultDomainOptional>localhost</DefaultDomainOptional>
<ShowTextLabels>1</ShowTextLabels>
<AutomaticCorrectLoginSettings>0</AutomaticCorrectLoginSettings>
<EnableLogging>0</EnableLogging>
<AllowAjax>1</AllowAjax>
<MailsPerPage>20</MailsPerPage>
<AttachmentSizeLimit>10000000</AttachmentSizeLimit>
<EnableAttachmentSizeLimit>0</EnableAttachmentSizeLimit>
<MailboxSizeLimit>90000000</MailboxSizeLimit>
<EnableMailboxSizeLimit>0</EnableMailboxSizeLimit>
<DefaultTimeZone>0</DefaultTimeZone>
<DefaultUserCharset>0</DefaultUserCharset>
<DefaultSkin>Hotmail_Style</DefaultSkin>
<DefaultLanguage>English</DefaultLanguage>
<ViewMode>1</ViewMode>
</Settings>
分享到:
相关推荐
Either as one array of structs with all text and tags, or as sub- and subsub-levels of structs for each section enclosed between tags. With xmldata(...) is a "fast" lowlevel interface to read single...
string value = XmlHelper.Read(path, node, attribute); Console.WriteLine("Value from XML: " + value); ``` - 使用`Insert`方法向XML文件中插入新元素或更新属性: ```csharp string path = "config.xml";...
在"xml-Read.rar_visual c"这个压缩包中,提供的"xml Read.txt"文件可能包含更具体的代码示例或解释,可以帮助你深入理解和实践这些技术。记得解压文件并查阅其中的内容,以获得更全面的学习体验。
- `create_xml_node` 和 `delete_xml_node`:创建新节点或删除现有节点,用于动态构建或调整XML结构。 2. **Halcon函数手册**: 函数手册是Halcon用户的重要参考资料,它详尽地列出了所有可用的函数、参数、...
1. `read_xml_file`:这个函数用于读取XML文件内容,并将其转换为HALCON中的数据结构。它可以读取XML文件中的标签、属性和文本内容,方便后续处理。 2. `write_xml_file`:相反,这个函数将HALCON的数据结构写入XML...
通过使用`rapidxml::xml_document<>`、`rapidxml::xml_node<>`等类,可以实现对XML文件的读取和解析。 在Cocos2d-x中,要进行XML解析,首先需要包含对应的头文件,如`tinyxml.h`或`rapidxml.hpp`,然后根据选择的库...
public static void XmlAttributeEdit(string xmlPath, string NodePath, string NodeAttribute1, string NodeAttributeText) { XmlDocument objXmlDoc = new XmlDocument(); objXmlDoc.Load(xmlPath); XmlNode ...
readXmlFile("example.xml"); displayXmlInTreeWidget(&treeWidget, doc.documentElement()); ``` 然后,我们关注如何将QTreeWidget的内容导出并保存为XML文件。这通常涉及遍历QTreeWidget的所有项,根据它们的层次...
要读取或写入XML文件,可以使用File对象的OpenAsTextStream和WriteText/ReadAll方法。例如: ```vbscript Dim fileObj Set fileObj = CreateObject("Scripting.FileSystemObject") Set xmlFile = fileObj....
### VB读取XML文件知识点详解 #### 一、概述 在软件开发过程中,XML(可扩展标记语言)因其良好的结构化特性,在数据交换与存储方面得到了广泛应用。Visual Basic(简称VB),作为一款功能强大的编程语言,支持...
xmlDoc.Load(new FileInfo("path_to_your_xml_file.xml").OpenRead()); ``` 这将加载XML文件并准备进行解析。 2. 解析XML:加载XML文档后,你可以遍历文档的元素来获取数据。XmlElement类表示XML文档中的每一个元素...
XML(eXtensible Markup Language)是一种用于存储和交换数据的标记语言,广泛应用于软件开发、数据存储和网络通信等领域。在MATLAB中处理XML文件通常需要编写自定义的解析代码,但“xml_io_tools”这个包提供了一个...
QString strContent = QTextStream(&file).readAll(); if (!xmlDoc.Parse(strContent.toStdString().c_str())) { qDebug() << "TinyXML解析失败:" ; file.close(); return; } TiXmlElement* rootElement = ...
XML(Extensible Markup Language)是一种用于存储和传输数据的标准化格式,它被广泛应用于软件开发、数据交换和配置文件等领域。在VB.NET中,我们可以利用内置的类库来轻松地读取XML文件,从而获取其中的数据。下面...
本教程将通过一个名为"C# XML ReadWrite示例"的实例来详细讲解如何在C#中读取和写入XML文件。 首先,我们需要了解两个主要的类:`XmlReader`和`XmlWriter`。`XmlReader`是用于高效、只进的XML解析,它不保留解析过...
hr = pDoc->createNode(NODE_ELEMENT, L"image", NULL, &pNewNode); pNewNode->setTextContent(Base64Encode(imageBytes, imageSize)); ``` 5. **保存XML文件**: 用`save`方法将XML文档保存到文件: ```cpp ...
tree = ET.parse('read_xml.xml') root = tree.getroot() # 遍历XML元素 for child in root: print(child.tag, child.attrib) # 查找特定元素 target = root.find('.//{namespace}target_element') # 使用XPath...
osm-read, openstreetmap XML和PBF数据分析器 for node.js 和浏览器 使用函数和浏览器的PBF解析器 read介绍用法示例简单用法示例从URL示例解析 OSM XMLPBF随机访问分析器版本升级指南合并许可证联系人简介osm读取...
例如,`readxml.java`可能包含一个`readXMLFile()`方法,该方法使用SAX或DOM解析器打开并解析XML文件,然后执行相应的操作。 4. `tt.xml`: 这是一个实际的XML文件,可能包含测试数据或配置信息。解析此文件时,...