【发布时间】:2016-10-16 06:38:35
【问题描述】:
我正在使用 C# 和 Mono 编写一个可以为 Apple macOS 官方词典应用程序生成词典的库。字典源代码是一个 XML 文档,它看起来像这样:
<?xml version="1.0" encoding="UTF-8"?>
<!--
This is a sample dictionary source file.
It can be built using Dictionary Development Kit.
-->
<d:dictionary xmlns="http://www.w3.org/1999/xhtml" xmlns:d="http://www.apple.com/DTDs/DictionaryService-1.0.rng">
<d:entry id="dictionary_application" d:title="Dictionary application">
<d:index d:value="Dictionary application"/>
<h1>Dictionary application </h1>
<p>
An application to look up dictionary on Mac OS X.<br/>
</p>
</d:entry></d:dictionary>
问题是,元素的本地名称包含一个冒号,我运行我的代码,当它转到 WriteStartElement 方法时会抛出一个异常并告诉我:
“d:dictionary”中的名称字符无效。 ':' 字符,十六进制值 0x3A,不能包含在名称中。
所以我想问一下,这个问题应该怎么解决,并在里面写上冒号的本地名称呢?
【问题讨论】:
-
'd:' 标识命名空间。看这里:w3schools.com/xml/xml_namespaces.asp