首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否删除encoding="UTF-8"?使用xslt从<?xml version="1.0“encoding="UTF-8"?>

是否删除encoding="UTF-8"?使用xslt从<?xml version="1.0“encoding="UTF-8"?>
EN

Stack Overflow用户
提问于 2019-06-21 09:52:46
回答 1查看 993关注 0票数 0

我正在尝试添加2个名称空间并删除encoding="UTF-8"?,但是我无法删除encoding="UTF-8“。

输入xml:

代码语言:javascript
复制
  <?xml version="1.0" encoding="UTF-8"?>
   <ACCEPTATION Date_de_Production="2019-06-20T19:45:48.470-04:00" 
   Id_fichier_CAM="CAM_erreur piece 395 balise absent non permises.xml" 
   Artwork="Artwork-6" Environnement="UNIT" Nombre_Pieces_Lues="6" 
  Nombre_Pieces_Invalides="6" Statut_Acceptation_Statut="ACCEPTE" 
   Statut_Acceptation_Code_Rejet="000" Traitement_Producteur="GPH321">
  <PIECE>
  <CAM_Type_Piece>CAMPS</CAM_Type_Piece>
   <CAM_Statut>NON CHARGE</CAM_Statut>
  </PIECE>
  <PIECE>
   <CAM_Type_Piece>CAMPS</CAM_Type_Piece>
  <CAM_Statut>NON CHARGE</CAM_Statut>>
  </PIECE>
 </ACCEPTATION>

xslt代码:请更正代码并帮助我获得所需的输出。

代码语言:javascript
复制
 <?xml version="1.0"?>
 <xsl:stylesheet version="1.0" 
 xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 <xsl:output indent="yes" method="xml" omit-xml-declaration="yes"/>
 <xsl:strip-space elements="*"/>
    <!-- <xsl:output method="xml" omit-xml-declaration="yes"/>-->
    <xsl:template match="@*|text()|comment()|processing-instruction()">
    <xsl:copy>
        <xsl:apply-templates select="@*|node()"/>
    </xsl:copy>
</xsl:template>
<xsl:template match="ACCEPTATION">
    <ACCEPTATION xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
        xmlns:xsd="http://www.w3.org/2001/XMLSchema">
        <xsl:apply-templates select="@*|node()"/>
    </ACCEPTATION>
  </xsl:template>
   <xsl:template match="*">
    <xsl:element name="{local-name()}">
    <xsl:apply-templates select="@*|node()"/>
    </xsl:element>
</xsl:template>    
</xsl:stylesheet>

required out xml:在输出中不应该存在xml编码。

代码语言:javascript
复制
<?xml version="1.0">
   <ACCEPTATION xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:xsd="http://www.w3.org/2001/XMLSchema"
         Artwork="Artwork-6"
         Date_de_Production="2019-06-20T19:45:48.470-04:00"
         Environnement="UNIT"
         Id_fichier_CAM="CAM_erreur piece 395 balise absent non 
permises.xml"
         Nombre_Pieces_Invalides="6"
         Nombre_Pieces_Lues="6"
         Statut_Acceptation_Code_Rejet="000"
         Statut_Acceptation_Statut="ACCEPTE"
         Traitement_Producteur="GPH321">
 <PIECE>
  <CAM_Type_Piece>CAMPS</CAM_Type_Piece>
  <CAM_Statut>NON CHARGE</CAM_Statut>
 </PIECE>
 <PIECE>
  <CAM_Type_Piece>CAMPS</CAM_Type_Piece>
  <CAM_Statut>NON CHARGE</CAM_Statut>&gt;
 </PIECE>
 </ACCEPTATION>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-06-21 12:16:53

代码语言:javascript
复制
check this code:-

<?xml version="1.0"?>
 <xsl:stylesheet version="1.0"  xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 <xsl:output indent="yes" method="xml" omit-xml-declaration="yes"/>
 <xsl:strip-space elements="*"/>
    <!-- <xsl:output method="xml" omit-xml-declaration="yes"/>-->
    <xsl:template match="@*|text()|comment()|processing-instruction()">
    <xsl:copy>
        <xsl:apply-templates select="@*|node()"/>
    </xsl:copy>
</xsl:template>
<xsl:template match="ACCEPTATION">
<xsl:text disable-output-escaping="yes"><![CDATA[<?xml version="1.0"?>]]></xsl:text>
    <ACCEPTATION xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
        xmlns:xsd="http://www.w3.org/2001/XMLSchema">
        <xsl:apply-templates select="@*|node()"/>
    </ACCEPTATION>
  </xsl:template>
   <xsl:template match="*">
    <xsl:element name="{local-name()}">
    <xsl:apply-templates select="@*|node()"/>
    </xsl:element>
</xsl:template>    
</xsl:stylesheet>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56695912

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档