在XML标记中表示空格和制表符

在XML标记中表示空格和制表符,xml,tags,Xml,Tags,如何在XML标记中表示空格和制表符。是否有任何特殊字符可供它们表示。我认为您可以直接在XML文档中使用实际的空格或制表符,但如果您正在寻找特殊字符来表示它们,以便文本处理器不会弄乱它们,那么: space =   tab = 	 XML元素的标记(即名称)中不能有空格和制表符,请参阅规范:。除了字母数字字符外,名称中还允许使用冒号、下划线、破折号和点字符,并且第一个字母不能是破折号或点。某些unicode字符也被允许使用,没有实际的双重检查,我想说这些是

如何在XML标记中表示空格和制表符。是否有任何特殊字符可供它们表示。

我认为您可以直接在XML文档中使用实际的空格或制表符,但如果您正在寻找特殊字符来表示它们,以便文本处理器不会弄乱它们,那么:

space =  
tab   = 	

XML元素的标记(即名称)中不能有空格和制表符,请参阅规范:。除了字母数字字符外,名称中还允许使用冒号、下划线、破折号和点字符,并且第一个字母不能是破折号或点。某些unicode字符也被允许使用,没有实际的双重检查,我想说这些是国际字母。

如果您讨论的是多个和非空格的空白字符被专门从属性值中剥离的问题,那么是的,将它们编码为字符引用,如 ;会修好的。

对我有用

\n = 

\r = 
\t = 	
space =  
下面是一个关于如何在XML中使用它们的示例

<KeyWord name="hello&#x9;" />

我遇到了同样的问题,上面的答案都没有解决问题,所以我尝试了一些非常直接的方法:我只是输入了
字符串.xml
\n\t

完整字符串如下所示
-Automatische-Aktualisierung der\n\tDatenbank

结果:

  • Aktualisierung der自动化公司

    达滕班克

(中间没有额外的线)


也许它会帮助别人。对于我来说,为了使它工作,我需要在CDATA xml元素中对空格的十六进制值进行编码,这样解析后的空格加起来就像在htm webgae中一样&在浏览器中查看时只显示空格!。(以上所有想法和答案都很有用)


对一个常见的老问题的新的扩展答案

XML组件名称中的空白 摘要:不允许在XML元素或属性名称中使用空格字符

以下是与空白相关的主要Unicode代码点:

  • #x0009
    字符列表
  • #x0020
    空格
  • #x000A
    换行符(左前)
  • #x000D
    回车(CR)
  • #x00A0
    无中断空间
  • 中等数学空间
  • #x3000
    表意空间
以下代码点均不被允许:


XML内容中的空白(不是组件名称) 摘要:空白字符当然可以在XML内容中使用

XML内容中允许使用上述所有空白代码点:

Unicode代码点可以按以下方式插入。十进制
和#
十进制
和十六进制
和#x
hex
表单

  • 十六进制十进制Unicode名称
  • 	
    	
  • 
    
    
    
  • 
    
  •  
     
  • 和#xA0
     

可以使用Unicode UCS-2编码非法的XML标记名字符。这个很好用。我使用它来创建转换为json的XML(与XPath相比,JPath较弱)。注意空格、(,)字符的处理。 Unicode UCS-2代码图:

XML:


…如果你想要一个不间断的空间,你也可以使用 ;tab= ;不适用于我,因为输入键为 ;,没有数字我在哪里可以找到这些“特殊字符”的列表,它们叫什么?尝试其他现有的解决方案,我很久以前就这么做了,所以无法确认为什么它不起作用。。。
<my-xml-element><![CDATA[&#x20;]]></my-xml-element>
NameStartChar ::= ":" | [A-Z] | "_" | [a-z] | [#xC0-#xD6] | [#xD8-#xF6] |
                  [#xF8-#x2FF] | [#x370-#x37D] | [#x37F-#x1FFF] |
                  [#x200C-#x200D] | [#x2070-#x218F] | [#x2C00-#x2FEF] |
                  [#x3001-#xD7FF] | [#xF900-#xFDCF] | [#xFDF0-#xFFFD] |
                  [#x10000-#xEFFFF]
NameChar      ::= NameStartChar | "-" | "." | [0-9] | #xB7 | [#x0300-#x036F] |
                  [#x203F-#x2040]
Name          ::= NameStartChar (NameChar)*
Char ::= #x9 | #xA | #xD | [#x20-#xD7FF] | [#xE000-#xFFFD] | [#x10000-#x10FFFF]
/* any Unicode character, excluding the surrogate blocks, FFFE, and FFFF. */
        tag.Name = tag.Name.Replace(" ", "_x0020_");
        tag.Name = tag.Name.Replace("(", "_x0028_");
        tag.Name = tag.Name.Replace(")", "_x0029_");
  <Internal_x0020_Chargeback_x0020_ID>{CHARGEBACKCODE}</Internal_x0020_Chargeback_x0020_ID>
  <Bill_x0020_To>{CHARGEBACKCODE}</Bill_x0020_To>
  <Operator_x0020_or_x0020_Directly_x0020_Responsible_x0020_Individual_x0020__x0028_DRI_x0029_>zzz@yyy.gov</Operator_x0020_or_x0020_Directly_x0020_Responsible_x0020_Individual_x0020__x0028_DRI_x0029_>
    "Internal Chargeback ID": "{CHARGEBACKCODE}",
    "Bill To": "{CHARGEBACKCODE}",
    "Operator or Directly Responsible Individual (DRI)": "xxx@yyy.gov",