xml是什么文件格式

xml是什么文件格式,第1张

xml是一种纯文本格式的文件。xml指的是可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言;而XML文件一般指里面写有可扩展标记语言代码的文件。

XML的特点

XML可以从HTML中分离数据。即能够在HTML文件之外将数据存储在XML文档中,这样可以使开发者集中精力使用HTML做好数据的显示和布局,并确保数据改动时不会导致HTML文件也需要改动,从而方便维护页面。XML也能够将数据以“数据岛”的形式存储在HTML页面中,开发者依然可以把精力集中到使用HTML格式化和显示数据上。

XML可用于交换数据。基于XML可以在不兼容的系统之间交换数据,计算机系统和数据库系统所存储的数据有多种形式,对于开发者来说,最耗时间的工作就是在遍布网络的系统之间交换数据。把数据转换为XML格式存储将大大减少交换数据时的复杂性,还可以使这些数据能被不同的程序读取。

XML可应用于B2B中。例如在网络中交换金融信息,目前XML正成为遍布网络的商业系统之间交换信息所使用的主要语言,许多与B2B有关的完全基于XML的应用程序正在开发中。

利用XML可以共享数据。XML数据以纯文本格式存储,这使得XML更易读、更便于记录、更便于调试,使不同系统、不同程序之间的数据共享变得更加简单。

XML可以充分利用数据。XML是与软件、硬件和应用程序无关的,数据可以被更多的用户、设备所利用,而不仅仅限于基于HTML标准的浏览器。其他客户端和应用程序可以把XML文档作为数据源来处理,就像 *** 作数据库一样,XML的数据可以被各种各样的“阅读器”处理。

一、根据数据集生成 XML 并用于 Excel

本节说明如何创建 DataSet 对象,以及如何通过 WriteXML 方法将该对象包含的数据导出至 XML 文件。DataSet 对象是 Microsoft .NET Framework 中数据访问的关键部分,它是包含表、视图和关系的内存中的对象。

您可以打开直接在 Excel 中生成的 XML 文件。为了进行说明,请使用 Jet OLEDB 提供程序根据 Access Northwind 示例创建 DataSet 对象。类似代码都可用于使用 Visual Basic .NET 创建的 DataSet 对象。

1.

启动 Microsoft Visual Studio® .NET。在“文件”菜单上,单击“新建”,然后单击“项目”。从 Visual Basic 项目类型中选择“Windows 应用程序”。默认情况下将创建 Form1。

2.

在“视图”菜单上,选择“工具箱”,然后在 Form1 中添加一个按钮。

3.

双击 Button1。将出现该窗体的代码窗口。

4.

将下列专用成员变量添加到 Form1 类:

Private strConn As String = "Provider=Microsoft.Jet.OLEDB.4.0Data Source=" &_ "C:\Program Files\Microsoft Office\Office11\Samples\Northwind.mdb"

注意:可能需要修改连接字符串中 Northwind.mdb 的路径,以便与安装匹配。您可从 Microsoft 下载中心下载 Northwind Traders 示例数据库。此外,请注意路径字符串的 Data 和 Source 之间有一个空格。

5.

将以下代码添加到 Button1_Click 处理程序:

'Connect to the data source.

Dim objConn As New System.Data.OleDb.OleDbConnection(strConn)

Try

objConn.Open()

'使用客户表中的记录填充数据集。

Dim strSQL As String

Dim objDataset As New DataSet

Dim objAdapter As New System.Data.OleDb.OleDbDataAdapter

'OLEDbDataAdapter 充当了数据源之间的桥梁,

'在此例是客户表和数据集之间的桥梁。

strSQL = "Select CustomerID, CompanyName, ContactName, " &_

"客户的国家/地区和电话"

objAdapter.SelectCommand = New System.Data.OleDb.OleDbCommand( _

strSQL, objConn)

objAdapter.Fill(objDataset)

'创建要使用的 FileStream。

Dim strFilename As String

strFilename = "C:\Customers.xml"

Dim fs As New System.IO.FileStream(strFilename, _

System.IO.FileMode.Create)

'为 FileStream 创建 XmlTextWriter。

Dim xtw As New System.Xml.XmlTextWriter(fs, _

System.Text.Encoding.Unicode)

'将处理指令添加到 XML 文件的开头,

' 注释其中一个指示样式表的处理指令。

xtw.WriteProcessingInstruction("xml", "version='1.0'")

'xtw.WriteProcessingInstruction( _

'"xml-stylesheet", "type='text/xsl' href='customers.xsl'")

'将 XML 从数据集写入文件。

objDataset.WriteXml(xtw)

xtw.Close()

MsgBox("客户数据已导出至 C:\Customers.xml。")

Catch ex As Exception

MsgBox(ex.Message)

End Try

6.

按 F5 键创建并运行程序。

7.

单击 Button1 创建 XML 文件,然后关闭 Form1 以结束程序。

8.

启动 Excel,打开 C:\Customers.xml 输出文件。

9.

查看了 Excel 解析 XML 并对应到新工作簿中的行和列之后,关闭该文件并退出 Excel。

二、使用样式表设置 XML 的格式。

此步骤显示如何使用可扩展样式语言 (XSL) 样式表来转换 Excel 工作簿设置 XML 数据格式及组织 XML 数据的方式。

注意:在 XML 样式表文件中,XML 标记描述了文本文件中的数据,但 XML 单独不能指定如何向用户显示数据。XML 数据格式的设置规则常包含在 XSL 样式表中。XML 样式表是格式正确的 XML 文档,它可以使用 XSL 来转换 XML 数据以备显示。相同的 XML 数据可以有很多样式表。尽管实际的 XML 数据结构可能相同,但 XSL 样式表可将数据灵活显示为很多不同的格式。

1.

使用任意 HTML 编辑器或文本编辑器(如 Microsoft 记事本),将以下 XSL 保存为 C:\Customers.xsl:

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">

<xsl:template match="/">

<HTML>

<HEAD>

<STYLE>

.HDR { background-color:bisquefont-weight:bold }

</STYLE>

</HEAD>

<BODY>

<TABLE>

<COLGROUP WIDTH="100" ALIGN="CENTER"></COLGROUP>

<COLGROUP WIDTH="200" ALIGN="LEFT"></COLGROUP>

<COLGROUP WIDTH="200" ALIGN="LEFT"></COLGROUP>

<COLGROUP WIDTH="100" ALIGN="LEFT"></COLGROUP>

<COLGROUP WIDTH="100" ALIGN="LEFT"></COLGROUP>

<TD CLASS="HDR">客户 ID</TD>

<TD CLASS="HDR">公司</TD>

<TD CLASS="HDR">联系人</TD>

<TD CLASS="HDR">国家/地区</TD>

<TD CLASS="HDR">电话</TD>

<xsl:for-each select="NewDataSet/Table">

<TR>

<TD><xsl:value-of select="CustomerID"/></TD>

<TD><xsl:value-of select="CompanyName"/></TD>

<TD><xsl:value-of select="ContactName"/></TD>

<TD><xsl:value-of select="Country"/></TD>

<TD><xsl:value-of select="Phone"/></TD>

</TR>

</xsl:for-each>

</TABLE>

</BODY>

</HTML>

</xsl:template>

</xsl:stylesheet>

2.

删除 Button1_Click 处理程序中以下代码行中的注释标记:

xtw.WriteProcessingInstruction( _ "xml-stylesheet", "type='text/xsl' href='customers.xsl'")

该行代码将处理指令写入 XML 文件,而 Excel 要使用该文件定位 XSL 样式表 (Customers.xsl)。

3.

按 F5 键创建并运行程序。

4.

单击 Button1 创建 XML 文件,然后关闭 Form1 以结束程序。

5.

启动 Excel,打开 C:\Customers.xml 输出文件。

6.

由于 Excel 可通过 XML 文件明确 XSL 样式表的处理指令,因此您在打开该文件时会收到一个对话框提醒。在“导入 XML”对话框中,选择“打开该文件,应用以下样式表”。在列表中,选择 Customers.xsl 并单击“确定”。请注意,Excel 根据 XSL 样式表来设置 XML 数据的格式并组织各列。

7.

关闭该文件并退出 Excel。

三、使用代码打开已转换的 XML

此刻,您已使用 Excel 的用户界面打开了 XML 文件。本节说明如何使 Excel 自动按照编程的方式来打开工作簿。以下示例说明如何先将 DataSet 对象中的 XML 转换为超文本标记语言 (HTML),然后再打开已转换的 XML(其间无需用户干预)。

1.

在 Visual Basic .NET 项目中,向 Form1 添加另一按钮。

2.

双击 Button2。一旦显示窗体的代码窗口,将以下代码添加到 Button2_Click 处理程序:

'连接到数据源。

Dim objConn As New System.Data.OleDb.OleDbConnection(strConn)

Try

objConn.Open()

'使用客户表中的记录填充数据集。

Dim strSQL As String

Dim objDataset As New DataSet

Dim objAdapter As New System.Data.OleDb.OleDbDataAdapter

strSQL = "Select CustomerID, CompanyName, ContactName, " &_

"客户的国家/地区和电话"

objAdapter.SelectCommand = New System.Data.OleDb.OleDbCommand( _

strSQL, objConn)

objAdapter.Fill(objDataset)

' 创建要使用的 FileStream。

Dim strFilename As String

strFilename = "C:\Customers.htm"

Dim fs As New System.IO.FileStream(strFilename, _

System.IO.FileMode.Create)

'为 FileStream 创建 XmlTextWriter。

Dim xtw As New System.Xml.XmlTextWriter(fs, _

System.Text.Encoding.Unicode)

'使用样式表转换 XML。

Dim xmlDoc As System.Xml.XmlDataDocument = _

New System.Xml.XmlDataDocument(objDataset)

Dim xslTran As System.Xml.xsl.XslTransform = _

New System.Xml.Xsl.XslTransform

xslTran.Load("c:\customers.xsl")

xslTran.Transform(xmlDoc, Nothing, xtw, Nothing)

'将已转换的 XML 写入文件。

objDataset.WriteXml(xtw)

xtw.Close()

'启动 Excel 并打开得到的文件。

Dim oExcel As Object

oExcel = CreateObject("Excel.Application")

oExcel.Workbooks.Open("C:\Customers.htm")

'使 Excel 可见并赋予用户

'控制应用程序的权限。

oExcel.Visible = True

oExcel.UserControl = True

Catch ex As Exception

MsgBox(ex.Message)

End Try

3.

按 F5 键创建并运行程序。

4.

单击 Button2 在 Microsoft Excel 中打开已转换的 XML。

注意:尽管 Excel 对象模型的 OpenXML 方法允许您通过编程方式打开 XML 文件并应用样式表,但前一示例并不调用这一方法。因为在自动化客户端使用该方法存在一个已知问题。通过 Excel 宏调用 OpenXML 方法可按预期方式进行;但从自动化客户端中调用此方法,系统会忽略 <StyleSheet>参数。所谓自动化,即通过一个产品来控制另一产品的过程,最终结果是客户端产品可利用服务器产品的对象、方法和属性。

四、结论

本文介绍了如何根据 XML 生成数据集、如何使用架构设置 XML 数据的格式、如何自动化 Excel 并显示 XML。您可以使用这些 *** 作将重要的功能添加到应用程序中。尝试本文提供的代码示例,您可组合不同 *** 作并增强应用程序的有效性。

如何新建xml格式的文件,可以使用Excel文件转换为XML格式, *** 作方法如下:

1、首先在电脑中点击新建一个Excel文档,如下图所示。

2、打开Excel文件后,点击左上角的“文件”选项。

3、接着在打开的文件下拉菜单中,选择左侧的“另存为”选项。

4、然后在打开的窗口中,设置文件保存位置和名称。

5、然后在下拉菜单中。选择“XML”格式文件。

6、最后点击确定按钮,Excel就成功保存为“XML”格式了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11693916.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存