Xml字符串与C#对象之间相互转换
我们常常需要读取xml文件,把里面的信息转化为我们自定义的类型,或则吧自定义类型转化为Xml字符串。在这里介绍一个比较简单的对象转化方法。在我自己的Framwork里面也多次用到。里面涉及到节点、属性、集合。
示例一 该xml文件涉及到属性、节点集合不涉及个节点:
<?xml version="1.0" encoding="utf-8"?>
<databaseSettings defaultInstance="CheckboxSql">
<databaseTypes>
<databaseType name="sqlserver" type="Framework.Data.Sql.SqlDatabase,Framework" />
</databaseTypes>
<instances>
<instance name="CheckboxSql" type="sqlserver" connectionString="DefaultConnectionString" />
<instance name="TestProvider" type="sqlserver" connectionString="TestConnectionString" />
<instance name="DBAuthenticationProvider" type="sqlserver" connectionString="FrameworkConnectionString" />
<instance name="DBProfileProvider" type="sqlserver" connectionString="TestConnectionString" />
</instances>
</databaseSettings>
自定相关类
[XmlRoot("databaseType", Namespace = "")]
public class DatabaseTypeData
{
// Fields
private string name;
private string typeName;
// Properties
[XmlAttribute("name")]
public string Name
{
get
{ return this.name; }
set
{ this.name = value; }
}
[XmlAttribute("type")]
public string TypeName
{
get
{ return this.typeName; }
set
{
相关文档:
//替换所有
Regex reg = new Regex(@"(?is)</?a\b[^>]*>(?:(?!</?a).)*</a>");
string result = reg.Replace(yourStr, "");
//保留www.abc.com链接
Regex reg = new Regex(@"(?is)</?a\b.*?href=(['""]?)(?!(?:http://)?www\.abc\.com)[^'""\s>]+\1[^>]*>(?<text>(?:(?!</?a).) ......
using System.Text.RegularExpressions;
string ohtml = this.TextBox1.Text;
System.Text.RegularExpressions.MatchCollection m;
//提取字符串的图片
......
Step 1:Form1 上添加一个ToolStripContainer控件
Step2:实现代码
private void Form2_Load(object sender, EventArgs e)
{
CMenuEx menu = new CMenuEx();
string sPath = "D:\\Menu.xml";//xml的内容
if (menu.FileExit())
&nb ......
XML和HTML常用转义字符
XML和HTML中都有一些特殊的字符,这些字符在XML和HTML中是不能直接使用的,如果必须使用这些字符,应该使用其对应的转义字符。
如果在XML文档中使用类似"<" 的字符, 那么解析器将会出现错误,因为解析器会认为这是一个新元素的开始。
所以不应该像下面那样书写代码:
<message&g ......
<?xml version="1.0"?>
<BANK_CREATE01>
<IDOC BEGIN="1">
<EDI_DC40 SEGMENT=" ......