C#裏,XML問題,,請高手賜教...江湖急救。。。 手動寫一個模板XML文件,然後。我想。。跟據這個模板XML文件用代碼解析它後轉成XSL/XSLT文件。這就是問題請各位XML高手,進來解答說說解決的絲路 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 看这里XSLT转换XML小结- Richie - 博客园 大哥。。是XML轉換成XSLT啊 不能寫代碼直接轉換麼?為什麼只有XSLT轉XML。。而沒有XML轉XSLT呢? 不明白。我是要用代碼把XML轉換成XSLT/XSL這個功能不能用工具去轉換的 说说你的需求:什么样的XML转换成怎样的XSLT Ma_JobType.xml<?xml version="1.0" standalone="yes"?><dsGet xmlns="http://tempuri.org/dsGet.xsd"> <Ma_JobType> <TxnId>4</TxnId> <Seq>8</Seq> <JobType>SH01</JobType> <JobTypeName>裁床</JobTypeName> <TypeFlag>S</TypeFlag> <DailySalary>1000.0000</DailySalary> <CheckPointId>9</CheckPointId> <LastModifyUser>SHERRY</LastModifyUser> <LastModifyDateTime>2010-02-05T08:53:41.59+08:00</LastModifyDateTime> </Ma_JobType> <Ma_JobType> <TxnId>5</TxnId> <Seq>11</Seq> <JobType>SK01</JobType> <JobTypeName>織前幅</JobTypeName> <TypeFlag>S</TypeFlag> <DailySalary>100.0000</DailySalary> <LastModifyUser>SUKI</LastModifyUser> <LastModifyDateTime>2009-12-28T16:27:35.35+08:00</LastModifyDateTime> </Ma_JobType></dsGet>Ma_JobType.xsl<?xml version="1.0" encoding="gb2312"?><?mso-application progid="Excel.Sheet"?><xsl:stylesheet version="1.0"xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ds="http://tempuri.org/dsGet.xsd"><xsl:output encoding="gbk"></xsl:output><xsl:template match="/"><Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40"> <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office"> <Created>1996-12-17T01:32:42Z</Created> <LastSaved>2000-11-18T06:53:49Z</LastSaved> <Version>11.5606</Version> </DocumentProperties> <OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office"> <RemovePersonalInformation/> </OfficeDocumentSettings> <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel"> <WindowHeight>4530</WindowHeight> <WindowWidth>8505</WindowWidth> <WindowTopX>480</WindowTopX> <WindowTopY>120</WindowTopY> <AcceptLabelsInFormulas/> <ProtectStructure>False</ProtectStructure> <ProtectWindows>False</ProtectWindows> </ExcelWorkbook> <Styles> <Style ss:ID="Default" ss:Name="Normal"> <Alignment ss:Vertical="Bottom"/> <Borders/> <Font ss:FontName="宋体" x:CharSet="134" ss:Size="12"/> <Interior/> <NumberFormat/> <Protection/> </Style> <Style ss:ID="s21"> <Font ss:FontName="宋体" x:CharSet="134" ss:Size="12" ss:Bold="1"/> </Style> <Style ss:ID="s22"> <Font ss:FontName="宋体" x:CharSet="134" ss:Size="12"/> </Style> </Styles> <Worksheet ss:Name="Sheet1"> <Table ss:ExpandedColumnCount="99" ss:ExpandedRowCount="255" x:FullColumns="1" x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="14.25"> <Column ss:Width="39"/> <Column ss:Width="27"/> <Column ss:Width="64.5"/> <Column ss:Width="102"/> <Column ss:Width="72"/> <Column ss:Width="94.5"/> <Column ss:Width="109.5"/> <Column ss:Width="124.5"/> <Column ss:Width="162"/> <Row ss:AutoFitHeight="0"> <Cell><Data ss:Type="String">TxnId</Data></Cell> <Cell><Data ss:Type="String">Seq</Data></Cell> <Cell ss:StyleID="s21"><Data ss:Type="String">Job Type</Data></Cell> <Cell ss:StyleID="s21"><Data ss:Type="String">Job Type Name</Data></Cell> <Cell ss:StyleID="s21"><Data ss:Type="String">Type Flag</Data></Cell> <Cell ss:StyleID="s21"><Data ss:Type="String">Daily Salary</Data></Cell> <Cell ss:StyleID="s21"><Data ss:Type="String">Check Point Id</Data></Cell> <Cell ss:StyleID="s21"><Data ss:Type="String">Last Modify User</Data></Cell> <Cell ss:StyleID="s21"><Data ss:Type="String">Last Modify Data Time</Data></Cell> </Row> <xsl:for-each select="ds:dsGet/ds:Ma_JobType" > <Row ss:AutoFitHeight="0"> <Cell><Data ss:Type="String"><xsl:value-of select="ds:TxnId"/></Data></Cell> <Cell><Data ss:Type="String"><xsl:value-of select="ds:Seq"/></Data></Cell> <Cell ss:StyleID="s22"><Data ss:Type="String"><xsl:value-of select="ds:JobType"/></Data></Cell> <Cell ss:StyleID="s22"><Data ss:Type="String"><xsl:value-of select="ds:JobTypeName"/></Data></Cell> <Cell ss:StyleID="s22"><Data ss:Type="String"><xsl:value-of select="ds:TypeFlag"/></Data></Cell> <Cell ss:StyleID="s22"><Data ss:Type="String"><xsl:value-of select="ds:DailySalary"/></Data></Cell> <Cell ss:StyleID="s22"><Data ss:Type="String"><xsl:value-of select="ds:CheckPointId"/></Data></Cell> <Cell ss:StyleID="s22"><Data ss:Type="String"><xsl:value-of select="ds:LastModifyUser"/></Data></Cell> <Cell ss:StyleID="s22"><Data ss:Type="String"><xsl:value-of select="ds:LastModifyDateTime"/></Data></Cell> </Row> </xsl:for-each> </Table> <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel"> <Unsynced/> <Print> <ValidPrinterInfo/> <PaperSizeIndex>9</PaperSizeIndex> <HorizontalResolution>300</HorizontalResolution> <VerticalResolution>300</VerticalResolution> </Print> <Selected/> <LeftColumnVisible>2</LeftColumnVisible> <Panes> <Pane> <Number>3</Number> <ActiveRow>7</ActiveRow> <ActiveCol>7</ActiveCol> </Pane> </Panes> <ProtectObjects>False</ProtectObjects> <ProtectScenarios>False</ProtectScenarios> </WorksheetOptions> </Worksheet> <Worksheet ss:Name="Sheet2"> <Table ss:ExpandedColumnCount="0" ss:ExpandedRowCount="0" x:FullColumns="1" x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="14.25"/> <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel"> <Unsynced/> <ProtectObjects>False</ProtectObjects> <ProtectScenarios>False</ProtectScenarios> </WorksheetOptions> </Worksheet> <Worksheet ss:Name="Sheet3"> <Table ss:ExpandedColumnCount="0" ss:ExpandedRowCount="0" x:FullColumns="1" x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="14.25"/> <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel"> <Unsynced/> <ProtectObjects>False</ProtectObjects> <ProtectScenarios>False</ProtectScenarios> </WorksheetOptions> </Worksheet></Workbook> </xsl:template></xsl:stylesheet>這個XSL是手動寫的我就是想。。根據上面的XML用代碼自己轉成XSL。 这个问题直接转肯定不行关键是你怎么处理xslt文件里的样式标签,一般的xml文件都是内容为主的文件只要你能做好对应解析的关系应该就能做出来 听说使用某个控件的值时,尽量命名局部变量,是这样吗? 如何动态的创建多个控件,并且能定位。比如说Label。 c#多项上传的时候,怎么显示出和我的电脑一样的界面? 如何获得控件的Scale值 一个奇怪的问题,寻求帮助~ 用C#做WINDOWS编程,多窗体时窗体刷新问题 SqlParameter的问题 asp.net c# excel导入问题 (好像没有人提到我这个问题) 简单问题--c#里有没有变长的数组,或则类似的东西?在线等待,谢谢 如何使用Datagridview显示,添加,修改数据库 C# C/S结构文件夹相互传送 网站开发怎么做接口
XSLT转换XML小结- Richie - 博客园
大哥。。是XML轉換成XSLT啊
不能寫代碼直接轉換麼?
為什麼只有XSLT轉XML。。而沒有XML轉XSLT呢?
我是要用代碼把XML轉換成XSLT/XSL
這個功能不能用工具去轉換的
Ma_JobType.xml<?xml version="1.0" standalone="yes"?>
<dsGet xmlns="http://tempuri.org/dsGet.xsd">
<Ma_JobType>
<TxnId>4</TxnId>
<Seq>8</Seq>
<JobType>SH01</JobType>
<JobTypeName>裁床</JobTypeName>
<TypeFlag>S</TypeFlag>
<DailySalary>1000.0000</DailySalary>
<CheckPointId>9</CheckPointId>
<LastModifyUser>SHERRY</LastModifyUser>
<LastModifyDateTime>2010-02-05T08:53:41.59+08:00</LastModifyDateTime>
</Ma_JobType>
<Ma_JobType>
<TxnId>5</TxnId>
<Seq>11</Seq>
<JobType>SK01</JobType>
<JobTypeName>織前幅</JobTypeName>
<TypeFlag>S</TypeFlag>
<DailySalary>100.0000</DailySalary>
<LastModifyUser>SUKI</LastModifyUser>
<LastModifyDateTime>2009-12-28T16:27:35.35+08:00</LastModifyDateTime>
</Ma_JobType>
</dsGet>
Ma_JobType.xsl<?xml version="1.0" encoding="gb2312"?>
<?mso-application progid="Excel.Sheet"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ds="http://tempuri.org/dsGet.xsd">
<xsl:output encoding="gbk"></xsl:output>
<xsl:template match="/">
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:x="urn:schemas-microsoft-com:office:excel"
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:html="http://www.w3.org/TR/REC-html40"> <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
<Created>1996-12-17T01:32:42Z</Created>
<LastSaved>2000-11-18T06:53:49Z</LastSaved>
<Version>11.5606</Version>
</DocumentProperties>
<OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office">
<RemovePersonalInformation/>
</OfficeDocumentSettings>
<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
<WindowHeight>4530</WindowHeight>
<WindowWidth>8505</WindowWidth>
<WindowTopX>480</WindowTopX>
<WindowTopY>120</WindowTopY>
<AcceptLabelsInFormulas/>
<ProtectStructure>False</ProtectStructure>
<ProtectWindows>False</ProtectWindows>
</ExcelWorkbook>
<Styles>
<Style ss:ID="Default" ss:Name="Normal">
<Alignment ss:Vertical="Bottom"/>
<Borders/>
<Font ss:FontName="宋体" x:CharSet="134" ss:Size="12"/>
<Interior/>
<NumberFormat/>
<Protection/>
</Style>
<Style ss:ID="s21">
<Font ss:FontName="宋体" x:CharSet="134" ss:Size="12" ss:Bold="1"/>
</Style>
<Style ss:ID="s22">
<Font ss:FontName="宋体" x:CharSet="134" ss:Size="12"/>
</Style>
</Styles>
<Worksheet ss:Name="Sheet1">
<Table ss:ExpandedColumnCount="99" ss:ExpandedRowCount="255" x:FullColumns="1"
x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="14.25">
<Column ss:Width="39"/>
<Column ss:Width="27"/>
<Column ss:Width="64.5"/>
<Column ss:Width="102"/>
<Column ss:Width="72"/>
<Column ss:Width="94.5"/>
<Column ss:Width="109.5"/>
<Column ss:Width="124.5"/>
<Column ss:Width="162"/>
<Row ss:AutoFitHeight="0">
<Cell><Data ss:Type="String">TxnId</Data></Cell>
<Cell><Data ss:Type="String">Seq</Data></Cell>
<Cell ss:StyleID="s21"><Data ss:Type="String">Job Type</Data></Cell>
<Cell ss:StyleID="s21"><Data ss:Type="String">Job Type Name</Data></Cell>
<Cell ss:StyleID="s21"><Data ss:Type="String">Type Flag</Data></Cell>
<Cell ss:StyleID="s21"><Data ss:Type="String">Daily Salary</Data></Cell>
<Cell ss:StyleID="s21"><Data ss:Type="String">Check Point Id</Data></Cell>
<Cell ss:StyleID="s21"><Data ss:Type="String">Last Modify User</Data></Cell>
<Cell ss:StyleID="s21"><Data ss:Type="String">Last Modify Data Time</Data></Cell>
</Row>
<xsl:for-each select="ds:dsGet/ds:Ma_JobType" >
<Row ss:AutoFitHeight="0">
<Cell><Data ss:Type="String"><xsl:value-of select="ds:TxnId"/></Data></Cell>
<Cell><Data ss:Type="String"><xsl:value-of select="ds:Seq"/></Data></Cell>
<Cell ss:StyleID="s22"><Data ss:Type="String"><xsl:value-of select="ds:JobType"/></Data></Cell>
<Cell ss:StyleID="s22"><Data ss:Type="String"><xsl:value-of select="ds:JobTypeName"/></Data></Cell>
<Cell ss:StyleID="s22"><Data ss:Type="String"><xsl:value-of select="ds:TypeFlag"/></Data></Cell>
<Cell ss:StyleID="s22"><Data ss:Type="String"><xsl:value-of select="ds:DailySalary"/></Data></Cell>
<Cell ss:StyleID="s22"><Data ss:Type="String"><xsl:value-of select="ds:CheckPointId"/></Data></Cell>
<Cell ss:StyleID="s22"><Data ss:Type="String"><xsl:value-of select="ds:LastModifyUser"/></Data></Cell>
<Cell ss:StyleID="s22"><Data ss:Type="String"><xsl:value-of select="ds:LastModifyDateTime"/></Data></Cell>
</Row>
</xsl:for-each>
</Table>
<WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
<Unsynced/>
<Print>
<ValidPrinterInfo/>
<PaperSizeIndex>9</PaperSizeIndex>
<HorizontalResolution>300</HorizontalResolution>
<VerticalResolution>300</VerticalResolution>
</Print>
<Selected/>
<LeftColumnVisible>2</LeftColumnVisible>
<Panes>
<Pane>
<Number>3</Number>
<ActiveRow>7</ActiveRow>
<ActiveCol>7</ActiveCol>
</Pane>
</Panes>
<ProtectObjects>False</ProtectObjects>
<ProtectScenarios>False</ProtectScenarios>
</WorksheetOptions>
</Worksheet>
<Worksheet ss:Name="Sheet2">
<Table ss:ExpandedColumnCount="0" ss:ExpandedRowCount="0" x:FullColumns="1"
x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="14.25"/>
<WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
<Unsynced/>
<ProtectObjects>False</ProtectObjects>
<ProtectScenarios>False</ProtectScenarios>
</WorksheetOptions>
</Worksheet>
<Worksheet ss:Name="Sheet3">
<Table ss:ExpandedColumnCount="0" ss:ExpandedRowCount="0" x:FullColumns="1"
x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="14.25"/>
<WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
<Unsynced/>
<ProtectObjects>False</ProtectObjects>
<ProtectScenarios>False</ProtectScenarios>
</WorksheetOptions>
</Worksheet>
</Workbook>
</xsl:template></xsl:stylesheet>這個XSL是手動寫的
我就是想。。根據上面的XML用代碼自己轉成XSL。
关键是你怎么处理xslt文件里的样式标签,一般的xml文件都是内容为主的文件
只要你能做好对应解析的关系应该就能做出来