Delphi xml 解析器,为什么有些字符是非法的 - 但很多不是?
Delphi xml parser, why are some characters illegal - but many are not?
我有一个非常基本的 xml,为此我通过 delphi 7 中的自动生成器创建了一个界面。这工作正常,直到我 运行 进入一些奇怪的字符被发送给我。例如:
<AfasGetConnector>
<Medewerker>
<Afstortnummer>0032123</Afstortnummer>
<Naam>Wiaëröóíïúáäâtè</Naam>
</Medewerker>
</AfasGetConnector>
将其拉入 Firefox / IE 会很快告诉您其中有非法字符。确切地说:ë、é 和 ö 将不被接受。然而,其余的都很好。 (即使是大写版本的 È、É 和 Ö 也可以)
这让我很困惑。为什么这 3 个是非法的,但“ä”和其他大多数都可以?还有其他我应该担心的吗?
整个块是在 CDATA 中提供给我的。所以最初的 t运行sfer 没问题。然而,在那之后,我需要从 xml 中挑选出单独的 "Medewerker" 元素。没有封装在 CDATA 中。因此这个问题。
Pulling this into Firefox / IE will quickly tell you that there's illegal characters in it.
对我来说很好用。 Firefox 和 IE 都不会抱怨这些字符。
This confuses me. Why would those 3 be illegal, but "ä" and most others be fine?
它们根本不违法。 XML 规范允许使用 most Unicode 代码点(减去不可打印的控制字符、UTF-16 代理项和保留代码点)。您显示的所有字符都是合法的。
The whole block is given to me in a CDATA,. so the initial transfer goes fine,. After that however, I need to pick through the individual "Medewerker" elements from the xml,. which are not encapsulated in the CDATA. Hence the issue.
您可能遇到 XML 解析器 认为 XML 的编码与 XML 的编码不匹配实际上编码为。但是由于您没有提供已传输的 XML 的原始 原始字节 ,或者尝试加载和解析它的代码,因此无法知道确定实际发生了什么。
我有一个非常基本的 xml,为此我通过 delphi 7 中的自动生成器创建了一个界面。这工作正常,直到我 运行 进入一些奇怪的字符被发送给我。例如:
<AfasGetConnector>
<Medewerker>
<Afstortnummer>0032123</Afstortnummer>
<Naam>Wiaëröóíïúáäâtè</Naam>
</Medewerker>
</AfasGetConnector>
将其拉入 Firefox / IE 会很快告诉您其中有非法字符。确切地说:ë、é 和 ö 将不被接受。然而,其余的都很好。 (即使是大写版本的 È、É 和 Ö 也可以)
这让我很困惑。为什么这 3 个是非法的,但“ä”和其他大多数都可以?还有其他我应该担心的吗?
整个块是在 CDATA 中提供给我的。所以最初的 t运行sfer 没问题。然而,在那之后,我需要从 xml 中挑选出单独的 "Medewerker" 元素。没有封装在 CDATA 中。因此这个问题。
Pulling this into Firefox / IE will quickly tell you that there's illegal characters in it.
对我来说很好用。 Firefox 和 IE 都不会抱怨这些字符。
This confuses me. Why would those 3 be illegal, but "ä" and most others be fine?
它们根本不违法。 XML 规范允许使用 most Unicode 代码点(减去不可打印的控制字符、UTF-16 代理项和保留代码点)。您显示的所有字符都是合法的。
The whole block is given to me in a CDATA,. so the initial transfer goes fine,. After that however, I need to pick through the individual "Medewerker" elements from the xml,. which are not encapsulated in the CDATA. Hence the issue.
您可能遇到 XML 解析器 认为 XML 的编码与 XML 的编码不匹配实际上编码为。但是由于您没有提供已传输的 XML 的原始 原始字节 ,或者尝试加载和解析它的代码,因此无法知道确定实际发生了什么。