
C# 。。100分求高手弄一个简单的小程序。。。
2019-03-12 17:01:43
微信公开课小程序热门讨论「C# 。。100分求高手弄一个简单的小程序。。。」最新回复-usingSystem;usingSystem.Drawing;usingSystem.Collections;usingSystem.ComponentModel;usingSystem.Windows.Forms;usingSystem.Reflection;namespaceDataOutAndIn{///summary///OutPutExcel导出为EXCEL////summarypublicclassOutPutExcel{privateExcel.ApplicationoXL;privateExcel._WorkbookoWB;privateExcel._WorksheetoSheet;privateExcel.RangeoRng;privateSystem.Data.DataTabledt;privateSystem.Windows.Forms.SaveFileDialogSFD=newSaveFileDialog();publicOutPutExcel(){this.dt=newSystem.Data.DataTable();}///summary///快速导出Excel,直接在保存对话框中设好你要保存的路径和名字即可////summary///paramname=dtDataTable用户指定的数据表/parampublicvoidFastOutPutExcel(System.Data.DataTabledtDataTable){this.dt=dtDataTable;try{this.SFD.Filter=Excel文件(*.xls)|*.xls;this.SFD.FilterIndex=1;this.SFD.FileName=this.dt.TableName.ToString()+.xls;this.SFD.RestoreDirectory=false;if(this.SFD.ShowDialog()==System.Windows.Forms.DialogResult.OK){#region///////////////////////////////////2007.05.23从条件外移入///////////////////////////////////////启动Excel,并获取应用程序实例try{oXL=newExcel.Application();}catch(Exceptionexp){MessageBox.Show(exp.Message);}oXL.Visible=false;//Getanewworkbook.oWB=(Excel._Workbook)(oXL.Workbooks.Add(Missing.Value));oSheet=(Excel._Worksheet)oWB.ActiveSheet;//把表的列名加载进excel的第一行for(inti=0;ithis.dt.Columns.Count;i++){oSheet.Cells[1,i+1]=this.dt.Columns[i].ColumnName.ToString();}//设置第一行标题的字体格式为黑体居中//oSheet.get_Range(A1,D1).Font.Bold=true;//oSheet.get_Range(A1,D1).VerticalAlignment=Excel.XlVAlign.xlVAlignCenter;////创建一个二维数组把表中的数据读进来等待进行向excel加载数据的操作string[,]strCellText=newstring[this.dt.Rows.Count,this.dt.Columns.Count];try{for(inti=0;ithis.dt.Rows.Count;i++){for(intj=0;jthis.dt.Columns.Count;j++){strCellText[i,j]=this.dt.Rows[i][j].ToString();}}}catch(Exceptionex){MessageBox.Show(ex.Message);}stringExcelColumLable=this.GetCellNameLable((int)(this.dt.Columns.Count/26))+this.GetCellNameLable((int)(this.dt.Columns.Count%26));stringmax=ExcelColumLable+1;introw=this.dt.Rows.Count+1;ExcelColumLable+=row.ToString();#endregion///////////////////////////////////////////////////////////////////////////////////////////////oSheet.get_Range(A2,ExcelColumLable).Value2=strCellText;oRng=oSheet.get_Range(A1,max);oRng.EntireColumn.AutoFit();oXL.Visible=false;oXL.UserControl=true;oSheet.SaveAs(this.SFD.FileName,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value);try{oXL.Workbooks.Close();oXL.Quit();oXL=null;}catch(Exceptionexp){MessageBox.Show(exp.Message);}}//else//{//try//{//oXL.Workbooks.Close();//oXL.Quit();//oXL=null;//}//catch(Exceptionexp)//{//MessageBox.Show(exp.Message+测试);//}//}}catch(ExceptiontheException){StringerrorMessage;errorMessage=Error:;errorMessage=String.Concat(errorMessage,theException.Message);errorMessage=String.Concat(errorMessage,Line:);errorMessage=String.Concat(errorMessage,theException.Source);MessageBox.Show(errorMessage,Error);}}///summary///快速导出Excel,直接在保存对话框中设好你要保存的路径和名字即可,最多只导出二十六列以内的表////summary///paramname=dtDataTable用户指定的数据表/parampublicvoidFastOutPutExcelIn26Colunms(System.Data.DataTabledtDataTable){this.dt=dtDataTable;try{this.SFD.Filter=Excel文件(*.xls)|*.xls;this.SFD.FilterIndex=1;this.SFD.FileName=this.dt.TableName.ToString()+.xls;this.SFD.RestoreDirectory=false;if(this.SFD.ShowDialog()==System.Windows.Forms.DialogResult.OK){#region/////////////////////////////////////2007.05.23从条件语句外移入///////////////////////////////////////////////////启动Excel并获取应用程序实例try{oXL=newExcel.Application();}catch(Exceptionexp){MessageBox.Show(exp.Message);}oXL.Visible=false;//Getanewworkbook.oWB=(Excel._Workbook)(oXL.Workbooks.Add(Missing.Value));oSheet=(Excel._Worksheet)oWB.ActiveSheet;//把表的列名加载进excel的第一行for(inti=0;ithis.dt.Columns.Count;i++){oSheet.Cells[1,i+1]=this.dt.Columns[i].ColumnName.ToString();}//创建一个二维数组把表中的数据读进来等待进行向excel加载数据的操作string[,]strCellText=newstring[this.dt.Rows.Count,this.dt.Columns.Count];try{for(inti=0;ithis.dt.Rows.Count;i++){for(intj=0;jthis.dt.Columns.Count;j++){strCellText[i,j]=this.dt.Rows[i][j].ToString();}}}catch(Exceptionex){MessageBox.Show(ex.Message);}stringExcelColumLable=this.GetCellNameLable((int)(this.dt.Columns.Count%26));stringmax=ExcelColumLable+1;introw=this.dt.Rows.Count+1;ExcelColumLable+=row.ToString();#endregion/////////////////////////////////////////////////////////////////////////////////////////oSheet.get_Range(A2,ExcelColumLable).Value2=strCellText;oRng=oSheet.get_Range(A1,max);oRng.EntireColumn.AutoFit();oXL.Visible=false;oXL.UserControl=true;oSheet.SaveAs(this.SFD.FileName,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value);try{oXL.Workbooks.Close();oXL.Quit();oXL=null;}catch(Exceptionexp){MessageBox.Show(exp.Message);}}//else//{//try//{//oXL.Workbooks.Close();//oXL.Quit();//oXL=null;//}//catch(Exceptionexp)//{//MessageBox.Show(exp.Message);//}//}}catch(ExceptiontheException){StringerrorMessage;errorMessage=Error:;errorMessage=String.Concat(errorMessage,theException.Message);errorMessage=String.Concat(errorMessage,Line:);errorMessage=String.Concat(errorMessage,theException.Source);MessageBox.Show(errorMessage,Error);}}///summary///逐条导出Excel,它将打开一个Excel表格并把指定的表内数据导出到这个Excel进程中来////summary///paramname=dtDataTable用户指定的数据表/parampublicvoidSlowOutPutExcel(System.Data.DataTabledtDataTable){this.dt=dtDataTable;try{//启动EXCEL,并获取应用程序实例oXL=newExcel.Application();oXL.Visible=true;//Getanewworkbook.oWB=(Excel._Workbook)(oXL.Workbooks.Add(Missing.Value));oSheet=(Excel._Worksheet)oWB.ActiveSheet;//把表的列名加载进excel的第一行for(inti=0;ithis.dt.Columns.Count;i++){oSheet.Cells[1,i+1]=this.dt.Columns[i].ColumnName.ToString();}//设置第一行标题的字体格式为黑体居中//oSheet.get_Range(A1,D1).Font.Bold=true;//oSheet.get_Range(A1,D1).VerticalAlignment=Excel.XlVAlign.xlVAlignCenter;try{for(inti=0;ithis.dt.Rows.Count;i++){for(intj=0;jthis.dt.Columns.Count;j++){oSheet.Cells[i+2,j+1]=this.dt.Rows[i][j].ToString();}}}catch(Exceptionex){MessageBox.Show(ex.Message);}stringExcelColumLable=this.GetCellNameLable((int)(this.dt.Columns.Count/26))+this.GetCellNameLable((int)(this.dt.Columns.Count%26));stringmax=ExcelColumLable+1;oRng=oSheet.get_Range(A1,max);oRng.EntireColumn.AutoFit();oXL.Visible=true;oXL.UserControl=true;}catch(ExceptiontheException){StringerrorMessage;errorMessage=Error:;errorMessage=String.Concat(errorMessage,theException.Message);errorMessage=String.Concat(errorMessage,Line:);errorMessage=String.Concat(errorMessage,theException.Source);MessageBox.Show(errorMessage,Error);}}privatestringGetCellNameLable(intindex){stringlable=;switch(index){case1:lable=A;break;case2:lable=B;break;case3:lable=C;break;case4:lable=D;break;case5:lable=E;break;case6:lable=F;break;case7:lable=G;break;case8:lable=H;break;case9:lable=I;break;case10:lable=J;break;case11:lable=K;break;case12:lable=L;break;case13:lable=M;break;case14:lable=N;break;case15:lable=O;break;case16:lable=P;break;case17:lable=Q;break;case18:lable=R;break;case19:lable=S;break;case20:lable=T;break;case21:lable=U;break;case22:lable=V;break;case23:lable=W;break;case24:lable=X;break;case25:lable=Y;break;case0:lable=Z;break;default:break;}returnlable;}}}本程序在进行10到26进制转换时,做得不好.你可以进行修改使用.不过,现在这个,在上百列之内是不会有问题的.你可能在使用时需要引用excel和office.如果想要导入到数据库中去.一般的思路是先把excel当成一个数据库进行查询,再把查询到的数据写入目标库.这个过程比导出简单多了.
1 publicclassImportExportToExcel 2 { 3 privatestringstrConn; 45 privateSystem.Windows.Forms.OpenFileDialogopenFileDlg=newSystem.Windows.Forms.OpenFileDialog(); 6 privateSystem.Windows.Forms.SaveFileDialogsaveFileDlg=newSystem.Windows.Forms.SaveFileDialog();78 publicImportExportToExcel() 9 {10 //11 //TODO:在此处添加构造函数逻辑12 //13 this.openFileDlg.DefaultExt=xls;14 this.openFileDlg.Filter=Excel文件(*.xls)|*.xls;15 16 this.saveFileDlg.DefaultExt=xls;17 this.saveFileDlg.Filter=Excel文件(*.xls)|*.xls;18 19 }20 21 从Excel文件导入到DataSet#region从Excel文件导入到DataSet22 /////summary23 /////从Excel导入文件24 //////summary25 /////paramname=strExcelFileNameExcel文件名/param26 /////returns返回DataSet/returns27 //publicDataSetImportFromExcel(stringstrExcelFileName)28 //{29 // returndoImport(strExcelFileName);30 //}31 /**////summary32 ///从选择的Excel文件导入33 ////summary34 ///returnsDataSet/returns35 publicDataSetImportFromExcel()36 {37 DataSetds=newDataSet();38 if(openFileDlg.ShowDialog()==System.Windows.Forms.DialogResult.OK) 39 ds=doImport(openFileDlg.FileName);40 returnds;41 }42 /**////summary43 ///从指定的Excel文件导入44 ////summary45 ///paramname=strFileNameExcel文件名/param46 ///returns/returns47 publicDataSetImportFromExcel(stringstrFileName)48 {49 DataSetds=newDataSet();50 ds=doImport(strFileName);51 returnds;52 }53 /**////summary54 ///执行导入55 ////summary56 ///paramname=strFileName文件名/param57 ///returnsDataSet/returns58 privateDataSetdoImport(stringstrFileName)59 {60 if(strFileName==)returnnull;61 62 strConn=Provider=Microsoft.Jet.OLEDB.4.0;+63 DataSource=+ strFileName+;+64 ExtendedProperties=Excel8.0;;65 OleDbDataAdapterExcelDA=newOleDbDataAdapter(SELECT*FROM[Sheet1$],strConn);66 67 DataSetExcelDs=newDataSet();68 try69 {70 ExcelDA.Fill(ExcelDs,ExcelInfo);7172 }73 catch(Exceptionerr)74 {75 System.Console.WriteLine(err.ToString());76 }77 returnExcelDs;787980 81 }82 #endregion83 84 从DataSet到出到Excel#region从DataSet到出到Excel85 /**////summary86 ///导出指定的Excel文件87 ////summary88 ///paramname=ds要导出的DataSet/param89 ///paramname=strExcelFileName要导出的Excel文件名/param90 publicvoidExportToExcel(DataSetds,stringstrExcelFileName)91 {92 if(ds.Tables.Count==0||strExcelFileName==)return;93 doExport(ds,strExcelFileName);94 95 96 }97 /**////summary98 ///导出用户选择的Excel文件99 ////summary100 ///paramname=dsDataSet/param101 publicvoidExportToExcel(DataSetds)102 {103 if(saveFileDlg.ShowDialog()==System.Windows.Forms.DialogResult.OK)104 doExport(ds,saveFileDlg.FileName);105 106 }107 /**////summary108 ///执行导出109 ////summary110 ///paramname=ds要导出的DataSet/param111 ///paramname=strExcelFileName要导出的文件名/param112 privatevoiddoExport(DataSetds,stringstrExcelFileName)113 {114 115 Excel.Applicationexcel=newExcel.Application();116 117 // Excel.Workbookobj=newExcel.WorkbookClass();118 // obj.SaveAs(c:zn.xls,Excel.XlFileFormat.xlExcel9795,null,null,false,false,Excel.XlSaveAsAccessMode.xlNoChange,null,null,null,null);119120 introwIndex=1;121 intcolIndex=0;122123 excel.Application.Workbooks.Add(true);124 125 126 System.Data.DataTabletable=ds.Tables[0];127 foreach(DataColumncolintable.Columns)128 {129 colIndex++;130 excel.Cells[1,colIndex]=col.ColumnName; 131 }132133 foreach(DataRowrowintable.Rows)134 {135 rowIndex++;136 colIndex=0;137 foreach(DataColumncolintable.Columns)138 {139colIndex++;140excel.Cells[rowIndex,colIndex]=row[col.ColumnName].ToString();141 }142 }143 excel.Visible=false;144 excel.Sheets[0]=sss;145 excel.ActiveWorkbook.SaveAs(strExcelFileName+.XLS,Excel.XlFileFormat.xlExcel9795,null,null,false,false,Excel.XlSaveAsAccessMode.xlNoChange,null,null,null,null);146 147 148 //wkbNew.SaveAsstrBookName149150151 //excel.Save(strExcelFileName);152 excel.Quit();153 excel=null;154 155 GC.Collect();//垃圾回收156 }157 #endregion 更多有关「C# 。。100分求高手弄一个简单的小程序。。。」的疑问请扫码关注微信公开课+小程序!
1 publicclassImportExportToExcel 2 { 3 privatestringstrConn; 45 privateSystem.Windows.Forms.OpenFileDialogopenFileDlg=newSystem.Windows.Forms.OpenFileDialog(); 6 privateSystem.Windows.Forms.SaveFileDialogsaveFileDlg=newSystem.Windows.Forms.SaveFileDialog();78 publicImportExportToExcel() 9 {10 //11 //TODO:在此处添加构造函数逻辑12 //13 this.openFileDlg.DefaultExt=xls;14 this.openFileDlg.Filter=Excel文件(*.xls)|*.xls;15 16 this.saveFileDlg.DefaultExt=xls;17 this.saveFileDlg.Filter=Excel文件(*.xls)|*.xls;18 19 }20 21 从Excel文件导入到DataSet#region从Excel文件导入到DataSet22 /////summary23 /////从Excel导入文件24 //////summary25 /////paramname=strExcelFileNameExcel文件名/param26 /////returns返回DataSet/returns27 //publicDataSetImportFromExcel(stringstrExcelFileName)28 //{29 // returndoImport(strExcelFileName);30 //}31 /**////summary32 ///从选择的Excel文件导入33 ////summary34 ///returnsDataSet/returns35 publicDataSetImportFromExcel()36 {37 DataSetds=newDataSet();38 if(openFileDlg.ShowDialog()==System.Windows.Forms.DialogResult.OK) 39 ds=doImport(openFileDlg.FileName);40 returnds;41 }42 /**////summary43 ///从指定的Excel文件导入44 ////summary45 ///paramname=strFileNameExcel文件名/param46 ///returns/returns47 publicDataSetImportFromExcel(stringstrFileName)48 {49 DataSetds=newDataSet();50 ds=doImport(strFileName);51 returnds;52 }53 /**////summary54 ///执行导入55 ////summary56 ///paramname=strFileName文件名/param57 ///returnsDataSet/returns58 privateDataSetdoImport(stringstrFileName)59 {60 if(strFileName==)returnnull;61 62 strConn=Provider=Microsoft.Jet.OLEDB.4.0;+63 DataSource=+ strFileName+;+64 ExtendedProperties=Excel8.0;;65 OleDbDataAdapterExcelDA=newOleDbDataAdapter(SELECT*FROM[Sheet1$],strConn);66 67 DataSetExcelDs=newDataSet();68 try69 {70 ExcelDA.Fill(ExcelDs,ExcelInfo);7172 }73 catch(Exceptionerr)74 {75 System.Console.WriteLine(err.ToString());76 }77 returnExcelDs;787980 81 }82 #endregion83 84 从DataSet到出到Excel#region从DataSet到出到Excel85 /**////summary86 ///导出指定的Excel文件87 ////summary88 ///paramname=ds要导出的DataSet/param89 ///paramname=strExcelFileName要导出的Excel文件名/param90 publicvoidExportToExcel(DataSetds,stringstrExcelFileName)91 {92 if(ds.Tables.Count==0||strExcelFileName==)return;93 doExport(ds,strExcelFileName);94 95 96 }97 /**////summary98 ///导出用户选择的Excel文件99 ////summary100 ///paramname=dsDataSet/param101 publicvoidExportToExcel(DataSetds)102 {103 if(saveFileDlg.ShowDialog()==System.Windows.Forms.DialogResult.OK)104 doExport(ds,saveFileDlg.FileName);105 106 }107 /**////summary108 ///执行导出109 ////summary110 ///paramname=ds要导出的DataSet/param111 ///paramname=strExcelFileName要导出的文件名/param112 privatevoiddoExport(DataSetds,stringstrExcelFileName)113 {114 115 Excel.Applicationexcel=newExcel.Application();116 117 // Excel.Workbookobj=newExcel.WorkbookClass();118 // obj.SaveAs(c:zn.xls,Excel.XlFileFormat.xlExcel9795,null,null,false,false,Excel.XlSaveAsAccessMode.xlNoChange,null,null,null,null);119120 introwIndex=1;121 intcolIndex=0;122123 excel.Application.Workbooks.Add(true);124 125 126 System.Data.DataTabletable=ds.Tables[0];127 foreach(DataColumncolintable.Columns)128 {129 colIndex++;130 excel.Cells[1,colIndex]=col.ColumnName; 131 }132133 foreach(DataRowrowintable.Rows)134 {135 rowIndex++;136 colIndex=0;137 foreach(DataColumncolintable.Columns)138 {139colIndex++;140excel.Cells[rowIndex,colIndex]=row[col.ColumnName].ToString();141 }142 }143 excel.Visible=false;144 excel.Sheets[0]=sss;145 excel.ActiveWorkbook.SaveAs(strExcelFileName+.XLS,Excel.XlFileFormat.xlExcel9795,null,null,false,false,Excel.XlSaveAsAccessMode.xlNoChange,null,null,null,null);146 147 148 //wkbNew.SaveAsstrBookName149150151 //excel.Save(strExcelFileName);152 excel.Quit();153 excel=null;154 155 GC.Collect();//垃圾回收156 }157 #endregion 更多有关「C# 。。100分求高手弄一个简单的小程序。。。」的疑问请扫码关注微信公开课+小程序!
标签:微信公开课,小程序

「C# 。。100分求高手弄一个简单的小程序。。。」热议话题订阅
方法1:微信扫描微信公开课小程序码即可订阅热议话题「C# 。。100分求高手弄一个简单的小程序。。。」
方法2:微信搜索微信公开课小程序名称进入,即可订阅热议话题「C# 。。100分求高手弄一个简单的小程序。。。」
方法3:微信网页访问即速商店,长按识别微信公开课小程序码即可订阅热议话题「C# 。。100分求高手弄一个简单的小程序。。。」
微信公开课小程序热议话题「C# 。。100分求高手弄一个简单的小程序。。。」由微信公开课原创摘录于微信小程序商店shop.jisuapp.cn,转载请注明出处。
微信公开课热议话题「C# 。。100分求高手弄一个简单的小程序。。。」由微信公开课开发者向微信用户提供,并对本服务内容、数据资料及其运营行为等真实性、合法性及有效性承担全部责任。
微信公开课小程序
更新时间:2019-03-12 17:01:43
>
__methodCallerx27;ofundefined
>-404011cloudfunctionexecutionerror
>,请补充选择商家自营-预付卡销售-发行方类目,并在基础信息处申请该类目,通过
>:host在模拟器中显示无效
>:请在小程序服务页面上架正式(非测试)内容或商品后重新提交审核
>.net 微信小程序 上传图片
>'setTimeout'的问题
>‘三朵里熙SPA主题减压空间’为什么搜索关键词‘三朵里‘搜不到
>‘扫普通链接二维码打开小程序‘中设置为体验版,扫码打开是线上版本
>“cloudfunctions**indexjs”gitignore
>“NO ULINK DEVICE FOUND”是怎么回事
>“万马掌上校园”的类目审核
>“上线了”公司开发的微信小程序怎么样?
>“产品是否一定需要条形码”
>