跪求XSTL转换XML的问题
时间:2010-09-01
来源:互联网
doc.xml文件如下:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="docs.xsl"?>
<docs>
<directory name="Dir 1">
<file name="File 1" size="125" path="file1.pdf" />
<file name="File 2" size="10.2" path="file2.txt" />
</directory>
<directory name="Dir 2">
<directory name="Dir 3">
<file name="File 3" size="1887" path="file3.pdf" />
</directory>
<directory name="Dir 4">
<file name="File 4" size="475" path="file4.pdf" />
<file name="File 5" size="49" path="file4.zip" />
</directory>
</directory>
</docs>
要显示的结果:
.Dir 1 - size: 67,6
-file1 -size:125
-file2 -size:10,2
.Dir 2 -size: 803,66666
-Dir 3 -size:1887
*file3 -size:1887
-Dir 4 -size :262
*file4 -size:475
*file5 -size:49
Stats:
Files:5
Files (size >50):3
Files (.Pdf):3
(说明:在Dir1里有两个文件file1,file2,在Dir2中包含Dir3和Dir4,Dir3里有文件file3,Dir4里有文件file4和file5)
怎么写docs.xsl 文件啊?
谢谢
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="docs.xsl"?>
<docs>
<directory name="Dir 1">
<file name="File 1" size="125" path="file1.pdf" />
<file name="File 2" size="10.2" path="file2.txt" />
</directory>
<directory name="Dir 2">
<directory name="Dir 3">
<file name="File 3" size="1887" path="file3.pdf" />
</directory>
<directory name="Dir 4">
<file name="File 4" size="475" path="file4.pdf" />
<file name="File 5" size="49" path="file4.zip" />
</directory>
</directory>
</docs>
要显示的结果:
.Dir 1 - size: 67,6
-file1 -size:125
-file2 -size:10,2
.Dir 2 -size: 803,66666
-Dir 3 -size:1887
*file3 -size:1887
-Dir 4 -size :262
*file4 -size:475
*file5 -size:49
Stats:
Files:5
Files (size >50):3
Files (.Pdf):3
(说明:在Dir1里有两个文件file1,file2,在Dir2中包含Dir3和Dir4,Dir3里有文件file3,Dir4里有文件file4和file5)
怎么写docs.xsl 文件啊?
谢谢
作者: beta_lele 发布时间: 2010-09-01
XML code
<xsl:stylesheet xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0" exclude-result-prefixes="xs"> <xsl:output indent="yes"/> <xsl:template match="docs"> <xsl:copy> <xsl:apply-templates select="*"/> <div>status</div> <div>Files: <xsl:value-of select="count(//file)"/></div> <div>Files (gt 50): <xsl:value-of select="count(//file[@size>50])"/></div> </xsl:copy> </xsl:template> <xsl:template match="directory"> <div> <xsl:value-of select="@name"/> -size:<xsl:value-of select="sum(//file/@size)"/> <xsl:apply-templates select="*"/> </div> </xsl:template> <xsl:template match="file"> <div> <xsl:value-of select="@name"/> -size:<xsl:value-of select="@size"/> </div> </xsl:template> </xsl:stylesheet>
作者: icy_csdn 发布时间: 2010-09-01
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28