首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用XSLT 3将XML转换为CSV

使用XSLT 3将XML转换为CSV
EN

Stack Overflow用户
提问于 2017-10-10 06:48:12
回答 1查看 281关注 0票数 0

我正在尝试将下面的excel转换为CSV格式

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<metric_data_response>
<metric_data>
<from>2017-10-07T00:00:00+00:00</from>
<to>2017-10-08T00:00:00+00:00</to>
<metr_not_found/>
<metr_found>
<metr_found>sampleurl</metr_found>
</metr_found>
<metr>
<metric>
<name>sampleurl</name>
<timeslcs>
<timeslc>
<from>2015-11-07T00:00:00+00:00</from>
<to>2015-11-07T01:00:00+00:00</to>
<values>
<power_percent>1000</power_percent>
</values>
</timeslc>
<timeslc>
<from>2015-11-07T01:00:00+00:00</from>
<to>2015-11-07T02:00:00+00:00</to>
<values>
<power_percent>2000</power_percent>
</values>
</timeslc>
<timeslc>
<from>2015-11-07T02:00:00+00:00</from>
<to>2015-11-07T03:00:00+00:00</to>
<values>
<power_percent>3000</power_percent>
</values>
</timeslc>
</timeslcs>
</metric>
</metr>
</metric_data>
</metric_data_response>

转换成下面的excel格式

2015-11-07T01:00:00+00:00,1000

2015-11-07T02:00:00+00:00,2000

2015-11-07 T03:00:00+00:00,3000

例如第一列中" to 's“和第二列中相应的"power_percent”,并移动到下一数据的下一行。

EN

回答 1

Stack Overflow用户

发布于 2017-10-10 07:23:46

试试这个:

代码语言:javascript
复制
<?xml version="1.0"?>

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="text" encoding="iso-8859-1"/>

    <xsl:template match="/">
        <xsl:for-each select="/metric_data_response/metric_data/metr/metric/timeslcs/timeslc">
            <xsl:value-of select="to"/>,<xsl:value-of select="values/power_percent"/><xsl:text>&#x0A;</xsl:text>
        </xsl:for-each>
    </xsl:template>
</xsl:stylesheet> 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46656116

复制
相关文章

相似问题

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