用C#把文件转换为XMLWord文档格式.docx
- 文档编号:22767871
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:11
- 大小:17.28KB
用C#把文件转换为XMLWord文档格式.docx
《用C#把文件转换为XMLWord文档格式.docx》由会员分享,可在线阅读,更多相关《用C#把文件转换为XMLWord文档格式.docx(11页珍藏版)》请在冰豆网上搜索。
///欢迎各位指导
publicclassForm1:
System.Windows.Forms.Form
{
///
///声明四个Button,一个OpenFileDialog,一个SaveFileDialog,以及两个XmlDocument
privateSystem.Windows.Forms.Buttonbutton1;
privateSystem.Windows.Forms.Buttonbutton2;
privateSystem.Windows.Forms.OpenFileDialogopenFileDialog1;
privateSystem.Windows.Forms.SaveFileDialogsaveFileDialog1;
privateSystem.Windows.Forms.Buttonbutton3;
privateSystem.Windows.Forms.Buttonbutton4;
privateSystem.Xml.XmlDocumentmXmlDoc;
privateSystem.Xml.XmlDocumentdoc;
privateSystem.ComponentModel.Containercomponents=null;
publicForm1()
{
//
//Windows窗体设计器支持所必需的
InitializeComponent();
//TODO:
在InitializeComponent调用后添加任何构造函数代码
}
///清理所有正在使用的资源。
protectedoverridevoidDispose(booldisposing)
if(disposing)
{
if(components!
=null)
{
components.Dispose();
}
}
base.Dispose(disposing);
#regionWindows窗体设计器生成的代码
///设计器支持所需的方法-不要使用代码编辑器修改
///此方法的内容。
privatevoidInitializeComponent()
this.button1=newSystem.Windows.Forms.Button();
this.button2=newSystem.Windows.Forms.Button();
this.openFileDialog1=newSystem.Windows.Forms.OpenFileDialog();
this.saveFileDialog1=newSystem.Windows.Forms.SaveFileDialog();
this.button3=newSystem.Windows.Forms.Button();
this.button4=newSystem.Windows.Forms.Button();
this.SuspendLayout();
//
//button1
this.button1.Location=newSystem.Drawing.Point(96,32);
this.button1.Name="
button1"
;
this.button1.TabIndex=0;
this.button1.Text="
生成xml"
this.button1.Click+=newSystem.EventHandler(this.button1_Click);
//button2
this.button2.Location=newSystem.Drawing.Point(96,80);
this.button2.Name="
button2"
this.button2.TabIndex=1;
this.button2.Text="
生成doc"
this.button2.Click+=newSystem.EventHandler(this.button2_Click);
//button3
this.button3.Location=newSystem.Drawing.Point(8,32);
this.button3.Name="
button3"
this.button3.TabIndex=2;
this.button3.Text="
加载doc"
this.button3.Click+=newSystem.EventHandler(this.button3_Click);
//button4
this.button4.Location=newSystem.Drawing.Point(8,80);
this.button4.Name="
button4"
this.button4.TabIndex=3;
this.button4.Text="
加载xml"
this.button4.Click+=newSystem.EventHandler(this.button4_Click);
//Form1
this.AutoScaleBaseSize=newSystem.Drawing.Size(6,14);
this.ClientSize=newSystem.Drawing.Size(184,141);
this.Controls.Add(this.button4);
this.Controls.Add(this.button3);
this.Controls.Add(this.button2);
this.Controls.Add(this.button1);
this.Name="
Form1"
this.Text="
this.ResumeLayout(false);
//手工注册一下Load和Closed事件
this.Load+=newSystem.EventHandler(this.Form1_Load);
this.Closed+=newSystem.EventHandler(this.Form1_Closed);
#endregion
///从这个入口启动窗体
staticvoidMain()
Application.Run(newForm1());
///把加载的Office文件转换为xml文件
privatevoidbutton1_Click(objectsender,System.EventArgse)
{
saveFileDialog1.Filter="
xml文件|*.xml"
//设置打开对话框的文件过滤条件
saveFileDialog1.Title="
保存成xml文件"
//设置打开对话框的标题
saveFileDialog1.FileName="
"
saveFileDialog1.ShowDialog();
//打开对话框
if(saveFileDialog1.FileName!
="
)//检测用户是否输入了保存文件名
mXmlDoc.Save(saveFileDialog1.FileName);
//用私有对象mXmlDoc保存文件,mXmlDoc在前面声明过
MessageBox.Show("
保存成功"
);
}
///把加载的xml文件转换为Office文件
privatevoidbutton2_Click(objectsender,System.EventArgse)
//从私有对象dox里选取me节点,这里的一些对xml对象的操作详细说明可以参考msdn以获取更多信息
XmlNodenode=doc.DocumentElement.SelectSingleNode("
me"
);
XmlElementele=(XmlElement)node;
//获取一个xml元素
stringpic=ele.GetAttribute("
aa"
//获取ele元素的aa属性并报讯在一个临时字符串变量pic
byte[]bytes=Convert.FromBase64String(pic);
//声明一个byte[]用来存放Base64解码转换过来的数据流
//从保存对话框里获取文件保存地址
OfficeDocuments(*.doc,*.xls,*.ppt)|*.doc;
*.xls;
*.ppt"
保存成office文件"
)
//创建文件流并保存
FileStreamoutfile=newSystem.IO.FileStream(saveFileDialog1.FileName,System.IO.FileMode.CreateNew);
outfile.Write(bytes,0,(int)bytes.Length);
///加载窗口时的一些初始化行为
publicvoidForm1_Load(objectsender,System.EventArgse)
MessageBox.Show("
欢迎使用蛙蛙牌文档转换器"
///卸载窗体时把临时变量全部释放
publicvoidForm1_Closed(objectsender,System.EventArgse)
mXmlDoc=null;
doc=null;
///加载office文件并编码序列花为一个XmlDocument变量
privatevoidbutton3_Click(objectsender,System.EventArgse)
stringstrFileName;
openFileDialog1.Filter="
;
openFileDialog1.FilterIndex=1;
openFileDialog1.FileName="
openFileDialog1.ShowDialog();
strFileName=openFileDialog1.FileName;
if(strFileName.Length!
=0)
System.IO.FileStreaminFile=newFileStream(strFileName,System.IO.FileMode.Open,System.IO.FileAccess.Read);
byte[]binaryData=newbyte[inFile.Length];
inFile.Read(binaryData,0,(int)inFile.Length);
stringmStr=Convert.ToBase64String(binaryData);
stringhh=mStr;
mXmlDoc=newSystem.Xml.XmlDocument();
mStr=string.Format("
mStr);
mXmlDoc.LoadXml(mStr);
加载成功"
///加载xml文件到私有对象dox
privatevoidbutton4_Click(objectsender,System.EventArgse)
//Iftheuserdoesnotcancel,openthedocument.
doc=newXmlDocument();
doc.Load(strFileName);
}
}
【
备注说明,非正文,实际使用可删除如下部分。
本内容仅给予阅读编辑指点:
1、本文件由微软OFFICE办公软件编辑而成,同时支持WPS。
2、文件可重新编辑整理。
3、建议结合本公司和个人的实际情况进行修正编辑。
4、因编辑原因,部分文件文字有些微错误的,请自行修正,并不影响本文阅读。
Note:
itisnotthetext.Thefollowingpartscanbedeletedforactualuse.Thiscontentonlygivesreadingandeditinginstructions:
1.ThisdocumentiseditedbyMicrosoftofficeofficesoftwareandsupportsWPS.
2.Thefilescanbeeditedandreorganized.
3.Itissuggestedtoreviseandeditaccordingtotheactualsituationofthecompanyandindividuals.
4.Duetoeditingreasons,someminorerrorsinthetextofsomedocumentsshouldbecorrectedbyyourself,whichdoesnotaffectthereadingofthisarticle.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C# 文件 转换 XML