📄 xml_order.cs
字号:
/***************************************************************/
/*File Name : OrderXml
/*Description : XML文件数据的导入与导出
/*Programmer : 俞浩斌
/*Make Date : 2009.02.16
/*Change : 俞浩斌 2009.02.16 XML文件数据的导入与导出
/*************************************************************/
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Xml;
using System.IO;
using System.Text;
using System.Xml.Schema;
using System.Xml.XPath;
using System.Xml.Serialization;
/// <summary>
/// Xml_Order 的摘要说明
/// </summary>
public class Xml_Order : System.Web.UI.Page
{
public Xml_Order()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
/*****************************************************/
/*Description: 导入XML文件数据到数据库 */
/*Parameters:(用到的参数必须定义) */
/*Input: */
/*Ouyput: */
/*Return value: */
/*****************************************************/
public void ReadXML()
{
bool bSuccessAdd = false;
XmlReader xtr = XmlReader.Create(Server.MapPath("../xml/CST_Order.xml"));
while (xtr.Read())
{
string strTmp = xtr.Name;
if (strTmp == "rows")
{
string strSql = "";
while (xtr.Read())
{
if (xtr.NodeType == XmlNodeType.Text)
{
string strFieldValue = xtr.Value;
strSql += "'" + strFieldValue + "',";
}
if (xtr.NodeType == XmlNodeType.EndElement && xtr.Name == "rows")
{
strSql = "insert into [Orders] values(" + strSql.Substring(0, strSql.Length - 1) + ")";
DataAccess.CDataAccess oOdr = new DataAccess.CDataAccess();
bSuccessAdd = oOdr.ExecuteQuery(strSql);
break;
}
}
}
}
xtr.Close();
}
//// int j = 6;
//// int k = 1;
//// bool bSuccessAdd = false;
//// string strXml = null;
//// string strSql = "insert into [Orders] values(";
//// string sIndent = string.Empty;
//// string sElem = string.Empty;
//// XmlReader xtr = XmlReader.Create(Server.MapPath("XMLOrder.xml"));
//// while (xtr.Read())
//// {
//// //读取属性
//// if (xtr.NodeType == XmlNodeType.Element)
//// {
//// sIndent = string.Empty;
//// for (int i = 0; i < xtr.Depth; i++) sIndent += " ";
//// sElem = xtr.Name;
//// if (xtr.MoveToFirstAttribute())
//// do
//// {
//// strXml += xtr.Value;
//// }
//// while (xtr.MoveToNextAttribute());
//// }
//// //读取文本
//// else if (xtr.NodeType == XmlNodeType.Text)
//// {
//// strXml = xtr.Value;
//// if (k % j == 0)
//// {
//// strSql += "'" + strXml + "')";
//// DataAccess.CDataAccess oOdr = new DataAccess.CDataAccess();
//// bSuccessAdd = oOdr.ExecuteQuery(strSql);
//// if (bSuccessAdd == true)
//// {
//// strSql = "insert into [Orders] values(";
//// }
//// }
//// else
//// {
//// strSql += "'"+ strXml +"'";
//// }
//// k++;
//// }
//// }
//// xtr.Close();
////}
/*****************************************************/
/*Description: 导出数据库中数据到XML */
/*Parameters:(用到的参数必须定义) */
/*Input: */
/*Ouyput: */
/*Return value: */
/*****************************************************/
public void WriteXML()
{
string strSql = "select * from [Orders]";
DataAccess.CDataAccess oOdr = new DataAccess.CDataAccess();
DataTable DT = oOdr.GetDataTable(strSql);
//写入XML
XmlTextWriter xtw = new XmlTextWriter(Server.MapPath("../xml/CST_Order.xml"), Encoding.UTF8);
xtw.Formatting = Formatting.Indented;
xtw.WriteStartDocument(true);
xtw.WriteStartElement("oOdr");
for (int i = 0; i < DT.Rows.Count; i++)
{
xtw.WriteStartElement("rows");
xtw.WriteElementString("order_id", Convert.ToString(DT.Rows[i][0]));
xtw.WriteElementString("item_id", Convert.ToString(DT.Rows[i][1]));
xtw.WriteElementString("cust_id", Convert.ToString(DT.Rows[i][2]));
xtw.WriteElementString("quantity", Convert.ToString(DT.Rows[i][3]));
xtw.WriteElementString("base_price", Convert.ToString(DT.Rows[i][4]));
xtw.WriteElementString("order_date", Convert.ToString(DT.Rows[i][5]));
xtw.WriteEndElement();
}
xtw.WriteEndElement();
xtw.WriteEndDocument();
xtw.Flush();
xtw.Close();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -