存在项目中的excel文件 如何在web页面点击查看后 实现预览效果 但是不用下载 求解
3条回答 默认 最新
- 码云哥 2017-10-13 08:06关注
///
/// 导出excel
///
/// 读取文件路径
/// 保存文件内容
public static void ReadFile(string readFileName, string saveFileName)
{
Microsoft.Office.Interop.Excel.WorkbookClass wbclass;
WorkbookClass wkTemp;
Worksheet ws;
Worksheet wsTemp;
Microsoft.Office.Interop.Excel.Application excelApp;
DirectoryInfo di = new DirectoryInfo(readFileName);//遍历文件夹 if (di.Exists) { foreach (FileInfo item in di.GetFiles("*.xls")) { excelApp = new Microsoft.Office.Interop.Excel.Application(); object objOpt = System.Reflection.Missing.Value; //item.FullName 读取execl文件 wbclass = (WorkbookClass)excelApp.Workbooks.Open(item.FullName, objOpt, false, objOpt, objOpt, objOpt, true, objOpt, objOpt, true, objOpt, objOpt, objOpt, objOpt, objOpt); ws = (Worksheet)wbclass.Worksheets.get_Item(1); //取得总记录行数 (包括标题列) int rowsint = ws.UsedRange.Cells.Rows.Count; //得到行数 //int columnsint = mySheet.UsedRange.Cells.Columns.Count;//得到列数 Range rng1 = ws.Cells.get_Range("C1", "C" + rowsint); //rang Range rng2 = ws.Cells.get_Range("D1", "D" + rowsint); //rang Range rng3 = ws.Cells.get_Range("E1", "E" + rowsint); //rang Range rng4 = ws.Cells.get_Range("F1", "F" + rowsint); //rang object[,] CallType = (object[,])rng1.Value2; object[,] ActiveCall = (object[,])rng2.Value2; object[,] PassivityCall = (object[,])rng3.Value2; object[,] CallDate = (object[,])rng4.Value; //通过模版读取 wkTemp = (WorkbookClass)excelApp.Workbooks.Open("D:\\Template.xls", objOpt, false, objOpt, objOpt, objOpt, true, objOpt, objOpt, true, objOpt, objOpt, objOpt, objOpt, objOpt); wsTemp = (Worksheet)wkTemp.Worksheets.get_Item(1); Range rngD = (Range)wsTemp.Columns["D", Type.Missing];//设置单元格格式 Range rngE = (Range)wsTemp.Columns["E", Type.Missing];//设置单元格格式 rngD.NumberFormat = "yyyy-mm-dd hh:mm:ss"; rngE.NumberFormat = "hh:mm:ss"; //通过模版写入信息excel文件 for (int i = 1; i < rowsint; i++) { wsTemp.Cells[i, 1] = CallType[i, 1].ToString(); wsTemp.Cells[i, 2] = ActiveCall[i, 1].ToString(); wsTemp.Cells[i, 3] = PassivityCall[i, 1].ToString(); wsTemp.Cells[i, 4] = PassivityCall[i, 1].ToString(); } wsTemp.SaveAs(saveFileName + "\\1.xls", Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value); excelApp.Workbooks.Close();//关闭打开的文档 否则学号会显示科学计数法。 excelApp.Quit(); } } }
解决 无用评论 打赏 举报
悬赏问题
- ¥15 安卓adb backup备份应用数据失败
- ¥15 eclipse运行项目时遇到的问题
- ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
- ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
- ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
- ¥50 成都蓉城足球俱乐部小程序抢票
- ¥15 yolov7训练自己的数据集
- ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
- ¥15 电力市场出清matlab yalmip kkt 双层优化问题
- ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)