 |
所屬幫派:城市達(dá)人
2008/12/26 16:12:37 來(lái)自:
方法一:
1.首先聲明,這些方法也都是本人搜集的資料,然后為已所用,程序中不足之處,還請(qǐng)高手指點(diǎn).
2.網(wǎng)上有好多關(guān)于用SQL語(yǔ)句導(dǎo)入導(dǎo)出的例子,這里不再重復(fù)寫(xiě)了。
方法1:調(diào)用com組件,導(dǎo)出access數(shù)據(jù)到Excel,就是直接調(diào)用access的導(dǎo)出功能,此方法速度超級(jí)快
using Access;
Access.ApplicationClass oAccess = new Access.ApplicationClass();
oAccess.Visible = false;
try
{
//ACCESS9:
oAccess.OpenCurrentDatabase("d:\\wcf.mdb",false,"");
//導(dǎo)出到excel
oAccess.DoCmd.TransferSpreadsheet(Access.AcDataTransferType.acExport,Access.AcSpreadSheetType.acSpreadsheetTypeExcel9,"工作表名","d:\\wcf.xls",true,null,null);
//導(dǎo)入txt
//oAccess.DoCmd.TransferText(Access.AcTextTransferType.acExportDelim,"","Enterprise","d:\\wcf.txt",true,"",0);
oAccess.CloseCurrentDatabase();
oAccess.DoCmd.Quit(Access.AcQuitOption.acQuitSaveNone);
System.Runtime.InteropServices.Marshal.ReleaseComObject (oAccess);
oAccess = null;
MessageBox.Show("導(dǎo)入成功");
}
catch(Exception ex)
{
MessageBox.Show(ex.ToString());
}
finally
{
GC.Collect();
}
方法2:此方法速度也是超級(jí)快,只不過(guò)導(dǎo)出的格式非標(biāo)準(zhǔn)的Excel格式,默認(rèn)工作表名與文件名相同
string FileName="d:\\abc.xls";
System.Data.DataTable dt=new System.Data.DataTable();
FileStream objFileStream;
StreamWriter objStreamWriter;
string strLine="";
objFileStream = new FileStream(FileName,FileMode.OpenOrCreate,FileAccess.Write);
objStreamWriter = new StreamWriter(objFileStream,System.Text.Encoding.Unicode);
for(int i=0;i
|