- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我的代码是这样的:
case "Creator":
br.Read();
br.MoveToContent(); // gives the content of the role
tbComposer.Text = br.Value;
br.Read();
br.MoveToContent(); // gives the content of the role
tbConductor.Text = br.Value;
br.Read();
br.MoveToContent(); // gives the content of the role
tbOrchestra.Text = br.Value;
break;
这是工作代码:(感谢大家的输入……没有你我做不到!)Spokane-Dude
case "Creator":
br.MoveToFirstAttribute();
if (br.Value == "Composer") {
br.Read();
tbComposer.Text = br.Value;
}
if (br.Value == "Conductor") {
br.Read();
tbConductor.Text = br.Value;
}
if (br.Value == "Orchestra") {
br.Read();
tbOrchestra.Text = br.Value;
}
break;
这是我的 XML 的样子:
<ItemLookupResponse>
<OperationRequest/>
<Items>
<Request/>
<Item>
<ItemAttributes>
<Binding>Audio CD</Binding>
<CatalogNumberList>
<CatalogNumberListElement>43850</CatalogNumberListElement>
</CatalogNumberList>
<Creator Role="Composer">Gioachino Rossini</Creator>
<Creator Role="Conductor">Riccardo Chailly</Creator>
<Creator Role="Orchestra">National Philharmonic Orchestra</Creator>
</ItemAttributes>
</Item>
</Items>
</ItemLookupResponse>
我需要知道我正在阅读元素 Creator Role="Composer" 还是 Creator Role="Conductor" 等
那么,使用 XMLTextReader,我如何确定元素文本是什么?
最佳答案
这个样本怎么样?希望对你有用
static void Main(string[] args)
{
string xmlStr = "<?xml version=\"1.0\" encoding=\"utf-8\" ?><Creators><Creator Role=\"Composer\">Gioachino Rossini</Creator><Creator Role=\"Conductor\">Riccardo Chailly</Creator><Creator Role=\"Orchestra\">National Philharmonic Orchestra</Creator></Creators>";
using (XmlReader xmlReader = XmlTextReader.Create(new StringReader(xmlStr)))
{
xmlReader.MoveToContent();
xmlReader.ReadStartElement("Creators" , "");
SomeMethod("Composer", xmlReader);
SomeMethod("Conductor", xmlReader);
SomeMethod("Orchestra", xmlReader);
}
Console.WriteLine("........");
Console.Read();
}
static void SomeMethod(string role, XmlReader xmlReader)
{
xmlReader.MoveToAttribute("Role");
switch (role)
{
case "Composer":
{
xmlReader.MoveToContent();
Console.WriteLine(string.Format("Composer:{0}", xmlReader.ReadElementContentAsString()));
} break;
case "Conductor":
{
xmlReader.MoveToContent();
Console.WriteLine(string.Format("Conductor:{0}", xmlReader.ReadElementContentAsString()));
} break;
case "Orchestra":
{
xmlReader.MoveToContent();
Console.WriteLine(string.Format("Orchestra:{0}", xmlReader.ReadElementContentAsString()));
} break;
default: break;
}
}
关于c# - 使用 XMLTextReader,我如何知道我在哪个元素上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8205706/
我想使用忽略命名空间且不检查字符的 XmlTextReader。要忽略命名空间,我可以设置属性 Namespaces=false 并且不检查字符我可以使用 XmlReaderSettings.Chec
这可能是一件非常简单的事情,但我一直没能找到它,我可能只是在寻找错误的东西...... XmlTextReader --> 它是否锁定您正在阅读的文件?我正在使用 reader.Read(),仅此而已
static void ReadXml() { string a= null; double b= 0; double c= 0; XmlReader xmlReade
这是我的要求我需要反序列化一个对象,然后我需要做一些 xml 解析(我知道这听起来如何) 所以这是我的代码 XmlTextReader myFileReader = new XmlTextReader
根据list of available namespaces in a PCL project ,包含 System.Xml。但是,在引用 System.Xml 命名空间内的 XmlTextReade
XMLTextReader 使用什么解析方法?我很迷惑。萨克斯还是 Dom? 最佳答案 都不是,真的 - 这是一个 pull parser .它既不在内存中构建完整的对象模型 (DOM),也不解析整个
我是一名初级程序员,从 C# 和 Web 服务开始。 在我的网络服务的 Service.cs 文件中,我创建了一个 ReadXMLFile() 方法,我试图在其中读取现有的 XML 文件,从中获取数据
我尝试解析此 xml,但 C# 不断抛出异常,提示它包含无效字符。无法直接从messagebox中复制文字,所以我屏蔽了。 http://img29.imageshack.us/img29/694/x
我目前必须修复现有应用程序以使用 DOM interface 以外的东西的 libxml2因为事实证明它传递的 XML 文件太大以至于无法加载到内存中。 我已经将数据加载从遍历 DOM 树重写为使用
我尝试获取节点的值,但它总是返回一个空字符串。据我所知,我必须先访问节点才能阅读它,但我还没有找到一个示例/语法来完成它。我的 XMLNode 名称是“BuyNowPrice”,并且多次出现在我的 X
在保存不包含任何数据的数据表时,我在使用 C# 中的 XmlSerializer 和 XmlTextReader 时遇到了一些问题。这是一个已知问题吗?是否有解决方法?当使用 XMLSerialize
给定一个 XDocument,我如何才能获得一个 XmlTextReader 来读取它的内容? XDocument.CreateReader() 返回一个 XmlNodeReader,我需要一个 Xm
我的代码是这样的: case "Creator": br.Read(); br.MoveToContent(); // gives the content of the role
我需要在 XmlTextReader 上设置 MaxCharactersFromEntities,这是我目前的代码: xmlDocument = new XmlDocument(); xmlTextR
我试图在不扩展实体的情况下读取 XML 文档,对其进行一些操作,然后像最初一样使用未扩展的实体重新保存它。 当直接使用 XDocument 时,它加载失败,抛出异常告诉我它有未展开的实体: XDocu
我可以在 .NET 中解析 XML。现在我至少可以在 XmlTextReader 和 XDocument 之间做出选择。这两者(或框架中包含的任何其他 XML 解析器)之间是否有任何比较? 也许这可以
如何将 XmlReader 转换为 XmlTextReader? 代码片段: XmlTextReader reader = XmlTextReader.Create(pomfile.FullName)
使用 XmlTextReader.Read(),如何确定阅读器读取的内容是否为结束/结束标记? 请注意,我不是在寻找 XmlTextReader.IsEmptyElement 的用法.我正在寻找验证是
我的问题很简单,我有一个字节数组(通过套接字填充),我想将它转换成一个 XmlTextReader 对象。我该怎么做? 这行不通: byte[] buffer = new byte[5000]; //
当以 XML 格式流式传输到 XmlReader 时,出现内存不足异常!查看内存分析器,我们可以看到它一遍又一遍地调用 StringBuilder.Append,导致大量 128KB 缓冲区填满所有内
我是一名优秀的程序员,十分优秀!