在.NET Framework中轻松处理XML数据(4-3)

2016-02-19 20:41 1 1 收藏

下面是个超简单的在.NET Framework中轻松处理XML数据(4-3)教程,图老师小编精心挑选推荐,大家行行好,多给几个赞吧,小编吐血跪求~

【 tulaoshi.com - Web开发 】

  图八中代码演示了把一个string数据转换为Base64 编码的XML流。图九是输出的结果。

Figure 8 Persisting a String Array as Base64

using System;

using System.Text;

using System.IO;

using System.XML;

class MyBase64Array

{

public static void Main(String[] args)

{

string outputFileName = "test64.XML";

if (args.Length 0)

outputFileName = args[0]; // file name

// 把数组转换成XML

String[] theArray = {"Rome", "New York", "Sydney", "Stockholm",

"Paris"};

CreateOutput(theArray, outputFileName);

return;

}

private static void CreateOutput(string[] theArray, string filename)

{

// 打开XML writer

XMLTextWriter xmlw = new XmlTextWriter(filename, null);

//使子元素根据 Indentation 和 IndentChar 设置缩进。此选项只对元素内容进行缩进

XMLw.Formatting = Formatting.Indented;

//书写版本为“1.0”的 XML 声明

XMLw.WriteStartDocument();

//写出包含指定文本的注释 。

XMLw.WriteComment("Array to Base64 XML");

//开始写出array节点

XMLw.WriteStartElement("array");

//写出具有指定的前缀、本地名称、命名空间 URI 和值的属性

XMLw.WriteAttributeString("xmlns", "x", null, "dinoe:msdn-mag");

// 循环的写入array的子节点

foreach(string s in theArray)

{

//写出指定的开始标记并将其与给定的命名空间和前缀关联起来

XMLw.WriteStartElement("x", "element", null);

//把S转换成byte[]数组, 并把byte[]数组编码为 Base64 并写出结果文本,要写入的字节数为s总长度的2倍,一个string占的字节数是2字节。

XMLw.WriteBase64(Encoding.Unicode.GetBytes(s), 0, s.Length*2);

//关闭子节点

XMLw.WriteEndElement();

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

}

//关闭根节点,只有两级

XMLw.WriteEndDocument();

// 关闭writer

XMLw.Close();

// 读出写入的内容

XMLTextReader reader = new XmlTextReader(filname);

while(reader.Read())

{

//获取节点名为element的节点

if (reader.LocalName == "element")

{

byte[] bytes = new byte[1000];

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

int n = reader.ReadBase64(bytes, 0, 1000);

string buf = Encoding.Unicode.GetString(bytes);

Console.WriteLine(buf.Substring(0,n));

}

}

reader.Close();

}

}

来源:https://www.tulaoshi.com/n/20160219/1624274.html

延伸阅读
标签: Web开发
在.NET Framework中,XmlTextReader和XmlTextWriter类提供了对xml数据的读和写操作。在本文中,作者讲述了XML阅读器(Reader)的体系结构及它们怎样与XMLDOM 和SAX 解释器结合。作者也演示了怎么样运用阅读器分析和验证XML文档,怎么样创建格式良好的XML文档,以及怎么样用函数读/写基于Base64和BinHex编码的大型的XML文档。最后,作者讲了怎么样...
标签: Web开发
ValidationType属性设置验证的类型,它可以是:DTD, XSD, XDR或者none。如果没有指定验证的类型(用ValidationType.Auto选项),阅读器将自动的根据文档用最适合的验证类型。在验证过程中出现任何错误,都会触发ValidationEventHandler事件。如果未提供事件ValidationEventHandler事件处理程序,则抛出一个XML异常。定义ValidationEventHand...
标签: Web开发
图十二所示的代码演示了客户端用XMLTextReadWriter类在读操作的同时修改属性值的优势。在本期的msdn中提供了XmlTextReadWriter类的C#和VB源代码下载(见本文开头提供的链接)。 Figure 12 Changing Attribute Values private void ApplyChanges(string nodeName, string attribName, string oldVal, string newVal) { XMLTextRead...
标签: Web开发
在.NET Framework中,XMLTextReader和XmlTextWriter类提供了对xml数据的读和写操作。在本文中,作者讲述了XML阅读器(Reader)的体系结构及它们怎样与XMLDOM 和SAX 解释器结合。作者也演示了怎么样运用阅读器分析和验证XML文档,怎么样创建格式良好的XML文档,以及怎么样用函数读/写基于Base64和BinHex编码的大型的XML文档。最后,作者讲了怎...
标签: Web开发
分析属性值 大部分情况下,属性值都是一个简单的文本字符串。然而,这并不意味着实际应用中的属性值都是字符型的。有时候,属性值是由许多种类型的数据组合而成的,例如Date或Boolean,这时,你就要用XMLConvert或System.Convevt类的方法把这些类型转换成原来的类型。XmlConvert和System.Convevt类都能实现数据类型的转换,但是XmlCon...

经验教程

783

收藏

100
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部