zoukankan
html css js c++ java
C#操作OFFICE一(EXCEL)
C#操作Excel!
public
class
ImportExportToExcel
{
private
string
strConn ;
private
System.Windows.Forms.OpenFileDialog openFileDlg
=
new
System.Windows.Forms.OpenFileDialog();
private
System.Windows.Forms.SaveFileDialog saveFileDlg
=
new
System.Windows.Forms.SaveFileDialog();
public
ImportExportToExcel()
{
//
//
TODO: 在此处添加构造函数逻辑
//
this
.openFileDlg.DefaultExt
=
"
xls
"
;
this
.openFileDlg.Filter
=
"
Excel文件 (*.xls)|*.xls
"
;
this
.saveFileDlg.DefaultExt
=
"
xls
"
;
this
.saveFileDlg.Filter
=
"
Excel文件 (*.xls)|*.xls
"
;
}
从Excel文件导入到DataSet
#region
从Excel文件导入到DataSet
//
//
/ <summary>
//
//
/ 从Excel导入文件
//
//
/ </summary>
//
//
/ <param name="strExcelFileName">Excel文件名</param>
//
//
/ <returns>返回DataSet</returns>
//
public DataSet ImportFromExcel(string strExcelFileName)
//
{
//
return doImport(strExcelFileName);
//
}
/**/
///
<summary>
///
从选择的Excel文件导入
///
</summary>
///
<returns>
DataSet
</returns>
public
DataSet ImportFromExcel()
{
DataSet ds
=
new
DataSet();
if
(openFileDlg.ShowDialog()
==
System.Windows.Forms.DialogResult.OK)
ds
=
doImport(openFileDlg.FileName);
return
ds;
}
/**/
///
<summary>
///
从指定的Excel文件导入
///
</summary>
///
<param name="strFileName">
Excel文件名
</param>
///
<returns></returns>
public
DataSet ImportFromExcel(
string
strFileName)
{
DataSet ds
=
new
DataSet();
ds
=
doImport(strFileName);
return
ds;
}
/**/
///
<summary>
///
执行导入
///
</summary>
///
<param name="strFileName">
文件名
</param>
///
<returns>
DataSet
</returns>
private
DataSet doImport(
string
strFileName)
{
if
(strFileName
==
""
)
return
null
;
strConn
=
"
Provider=Microsoft.Jet.OLEDB.4.0;
"
+
"
Data Source=
"
+
strFileName
+
"
;
"
+
"
Extended Properties=Excel 8.0;
"
;
OleDbDataAdapter ExcelDA
=
new
OleDbDataAdapter(
"
SELECT * FROM [Sheet1$]
"
, strConn);
DataSet ExcelDs
=
new
DataSet();
try
{
ExcelDA.Fill(ExcelDs,
"
ExcelInfo
"
);
}
catch
(Exception err)
{
System.Console.WriteLine( err.ToString() );
}
return
ExcelDs;
}
#endregion
从DataSet到出到Excel
#region
从DataSet到出到Excel
/**/
///
<summary>
///
导出指定的Excel文件
///
</summary>
///
<param name="ds">
要导出的DataSet
</param>
///
<param name="strExcelFileName">
要导出的Excel文件名
</param>
public
void
ExportToExcel(DataSet ds,
string
strExcelFileName)
{
if
(ds.Tables.Count
==
0
||
strExcelFileName
==
""
)
return
;
doExport(ds,strExcelFileName);
}
/**/
///
<summary>
///
导出用户选择的Excel文件
///
</summary>
///
<param name="ds">
DataSet
</param>
public
void
ExportToExcel(DataSet ds)
{
if
(saveFileDlg.ShowDialog()
==
System.Windows.Forms.DialogResult.OK)
doExport(ds,saveFileDlg.FileName);
}
/**/
///
<summary>
///
执行导出
///
</summary>
///
<param name="ds">
要导出的DataSet
</param>
///
<param name="strExcelFileName">
要导出的文件名
</param>
private
void
doExport(DataSet ds,
string
strExcelFileName)
{
Excel.Application excel
=
new
Excel.Application();
//
Excel.Workbook obj=new Excel.WorkbookClass();
//
obj.SaveAs("c:\zn.xls",Excel.XlFileFormat.xlExcel9795,null,null,false,false,Excel.XlSaveAsAccessMode.xlNoChange,null,null,null,null);
int
rowIndex
=
1
;
int
colIndex
=
0
;
excel.Application.Workbooks.Add(
true
);
System.Data.DataTable table
=
ds.Tables[
0
] ;
foreach
(DataColumn col
in
table.Columns)
{
colIndex
++
;
excel.Cells[
1
,colIndex]
=
col.ColumnName;
}
foreach
(DataRow row
in
table.Rows)
{
rowIndex
++
;
colIndex
=
0
;
foreach
(DataColumn col
in
table.Columns)
{
colIndex
++
;
excel.Cells[rowIndex,colIndex]
=
row[col.ColumnName].ToString();
}
}
excel.Visible
=
false
;
excel.Sheets[
0
]
=
"
sss
"
;
excel.ActiveWorkbook.SaveAs(strExcelFileName
+
"
.XLS
"
,Excel.XlFileFormat.xlExcel9795,
null
,
null
,
false
,
false
,Excel.XlSaveAsAccessMode.xlNoChange,
null
,
null
,
null
,
null
);
//
wkbNew.SaveAs strBookName
//
excel.Save(strExcelFileName);
excel.Quit();
excel
=
null
;
GC.Collect();
//
垃圾回收
}
#endregion
从XML导入到Dataset
#region
从XML导入到Dataset
/**/
///
<summary>
///
从选择的XML文件导入
///
</summary>
///
<returns>
DataSet
</returns>
public
DataSet ImportFromXML()
{
DataSet ds
=
new
DataSet();
System.Windows.Forms.OpenFileDialog openFileDlg
=
new
System.Windows.Forms.OpenFileDialog();
openFileDlg.DefaultExt
=
"
xml
"
;
openFileDlg.Filter
=
"
xml文件 (*.xml)|*.xml
"
;
if
(openFileDlg.ShowDialog()
==
System.Windows.Forms.DialogResult.OK)
try
{ds.ReadXml(openFileDlg.FileName,System.Data.XmlReadMode.ReadSchema);}
catch
{}
return
ds;
}
/**/
///
<summary>
///
从指定的XML文件导入
///
</summary>
///
<param name="strFileName">
XML文件名
</param>
///
<returns></returns>
public
DataSet ImportFromXML(
string
strFileName)
{
if
(strFileName
==
""
)
return
null
;
DataSet ds
=
new
DataSet();
try
{ds.ReadXml(strFileName,System.Data.XmlReadMode.ReadSchema);}
catch
{}
return
ds;
}
#endregion
从DataSet导出到XML
#region
从DataSet导出到XML
/**/
///
<summary>
///
导出指定的XML文件
///
</summary>
///
<param name="ds">
要导出的DataSet
</param>
///
<param name="strXMLFileName">
要导出的XML文件名
</param>
public
void
ExportToXML(DataSet ds,
string
strXMLFileName)
{
if
(ds.Tables.Count
==
0
||
strXMLFileName
==
""
)
return
;
doExportXML(ds,strXMLFileName);
}
/**/
///
<summary>
///
导出用户选择的XML文件
///
</summary>
///
<param name="ds">
DataSet
</param>
public
void
ExportToXML(DataSet ds)
{
System.Windows.Forms.SaveFileDialog saveFileDlg
=
new
System.Windows.Forms.SaveFileDialog();
saveFileDlg.DefaultExt
=
"
xml
"
;
saveFileDlg.Filter
=
"
xml文件 (*.xml)|*.xml
"
;
if
(saveFileDlg.ShowDialog()
==
System.Windows.Forms.DialogResult.OK)
doExportXML(ds,saveFileDlg.FileName);
}
/**/
///
<summary>
///
执行导出
///
</summary>
///
<param name="ds">
要导出的DataSet
</param>
///
<param name="strExcelFileName">
要导出的XML文件名
</param>
private
void
doExportXML(DataSet ds,
string
strXMLFileName)
{
try
{ds.WriteXml(strXMLFileName,System.Data.XmlWriteMode.WriteSchema );}
catch
(Exception ex)
{System.Windows.Forms.MessageBox.Show(ex.Message,
"
Errol
"
) ;}
}
#endregion
}
查看全文
相关阅读:
若依项目上传下载附件实现
若依项目实现导入功能
若依项目开发实践
若依项目人员选择器实现
springboot打成Jar包后部署至Linux服务器上
linux下启动tomcat----Cannot find ./catalina.sh
Linux下更换jdk和配置环境变量
若依项目分模块集成uflo2
若依项目模块化开发
Java中涉及到金额业务的处理
原文地址:https://www.cnblogs.com/zpc870921/p/2765151.html
最新文章
内部类3
内部类2——为什么需要内部类?
内部类-1
接口
多态
访问权限控制
Java线程细节
复用类即多态性的体现
assertion的用法
Java I/O Basic
热门文章
Struts的文件下载功能实现代码
为什么写博客
Power Of Two
javax.servlet.jsp cannot be resolved to a type
MySQL数据库基本指令(全)
org.hibernate.hql.ast.QuerySyntaxException: XXX is not mapped
小知识点
启动tomcat,报java.lang.NoClassDefFoundError
MySQL数据库基本数据类型
若依项目整合eCharts实现图表统计功能
Copyright © 2011-2022 走看看