XmlReader.ReadContentAsBoolean 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
将当前位置的文本内容作为 Boolean
读取。
public:
virtual bool ReadContentAsBoolean();
public virtual bool ReadContentAsBoolean ();
abstract member ReadContentAsBoolean : unit -> bool
override this.ReadContentAsBoolean : unit -> bool
Public Overridable Function ReadContentAsBoolean () As Boolean
返回
作为 Boolean 对象的文本内容。
例外
试图进行的强制转换无效。
该字符串格式无效。
在上一次异步操作完成之前调用了 XmlReader 方法。 在此情况下,会引发 InvalidOperationException 并显示消息“异步操作已在进行中。”
示例
以下示例使用 ReadContentAsBoolean 方法将 属性作为 Boolean
值读取。
using (XmlReader reader = XmlReader.Create("dataFile_2.xml")) {
reader.ReadToDescendant("item");
do {
reader.MoveToAttribute("sale-item");
Boolean onSale = reader.ReadContentAsBoolean();
if (onSale) {
Console.WriteLine(reader["productID"]);
}
} while (reader.ReadToNextSibling("item"));
}
Using reader As XmlReader = XmlReader.Create("dataFile_2.xml")
reader.ReadToDescendant("item")
Do
reader.MoveToAttribute("sale-item")
Dim onSale As [Boolean] = reader.ReadContentAsBoolean()
If onSale Then
Console.WriteLine(reader("productID"))
End If
Loop While reader.ReadToNextSibling("item")
End Using
示例使用 dataFile_2.xml
文件作为输入。
<root>
<item sale-item='true' productID='123456' colors='blue green black'>
<price>9.95</price>
</item>
<item sale-item='false' productID='124390'>
<price>5.95</price>
</item>
<item sale-item='true' productID='53298'>
<price>12.95</price>
</item>
</root>
注解
此方法连接文本、空白、重要空格和 CDATA 部分,并跳过任何注释或处理指令。 实体引用会自动解析。
如果内容类型 xsd:boolean
化,则读取器返回未装箱 Boolean 的对象。 如果未键入xsd:boolean
内容,则读取器会尝试根据 W3C XML 架构第 2 部分:数据类型建议定义的规则将其Boolean转换为对象。
下表介绍了此方法如何处理每个节点类型。
XmlNodeType | 返回值 | 读取器行为 |
---|---|---|
Text CDATA Whitespace SignificantWhitespace EntityReference EndEntity |
将文本、CDATA、空白和有效空白节点的串联内容转换为所请求的类型。 | 移至下一个开始元素或结束元素标记。 实体引用自动展开。 |
Attribute |
与对属性值调用 XmlConvert.ToXxx 相同。 |
读取器仍保留在当前位置。 |
Comment ProcessingInstruction |
忽略处理指令 (PI) 或注释,读取 PI 或注释后面的串联文本内容。 | 移至下一个开始元素或结束元素标记。 实体引用自动展开。 |
EndElement |
空字符串。 | 读取器仍保留在当前位置。 |
Element XmlDeclaration None Document DocumentType Notation Entity DocumentFragment |
引发 InvalidOperationException。 | 未定义,尽管通常读取器将保留在当前位置。 |
有关详细信息,请参阅 XmlReader 参考页和 W3C XML 架构第 2 部分:数据类型 建议。