本文目录一览:
如何将网页表格导出到excel
1、首先,在我们的电脑上打开excel2007这款软件,其主界面如下图,我们可以看到格式栏和2003版有很大的区别
2、之后就会跳转到新的页面,我们可以在此网页的地址栏输入要导出数据的网站地址,系统默认的是当前浏览器的默认主页地址
3、然后我们依旧在此页面下,分别点击网站左上角的右箭头图标,然后选择右下角的“导入”
4、然后点击确定,过几秒钟时间,该网站的所有文字内容就全部导入到此excel表格了,接下来我们可以自行复制或者编辑
asp.net 前台table导出数据为excel
private void btnGenerate_Click(object sender, EventArgs e)
{
//为导出文件准备初始路径,文件格式,文件名等
this.saveFileDialog1.InitialDirectory = @"C:/Documents and Settings/Administrator/Desktop";
this.saveFileDialog1.Filter = "Excel File(*.xls)|*.xls";
this.saveFileDialog1.RestoreDirectory = true;
this.saveFileDialog1.Title = "导出到Excel";
this.saveFileDialog1.FileName = "New Excel File.xls";
try
{
if (this.saveFileDialog1.ShowDialog() == DialogResult.OK)
{
Stream mystream;
mystream = this.saveFileDialog1.OpenFile();//打开文件流
StreamWriter sw = new StreamWriter(mystream, System.Text.UnicodeEncoding.Unicode);//使用数据流的形式一行一行的写出
string rowValue = "";
string header = "日志编号/t客户端类型/t模块名称/t操作时间/t日志内容/t操作员工号/t操作员名/t"
+ "司磅员工号/t司磅员名/t操作机器IP/t计量站编号/t计量站名/t卡口编号/t卡口名/n";
sw.Write(header);//先写出Excel的列名
for (int i = 0; i this.dgvwMain.Rows.Count; i++)//控制行数
{
for (int j = 0; j this.dgvwMain.Columns.Count; j++)//控制列数
{
if (j 0)//此行没读完
{
rowValue += "/t";
}
if (this.dgvwMain.Rows[i].Cells[j].Value == null)//此行已读完
{
rowValue += "";
}
else//读取行中的数据
{
rowValue += this.dgvwMain.Rows[i].Cells[j].Value.ToString();
}
}
sw.Write(rowValue);//写到数据流中
rowValue = "/n";
}
sw.Close();//关闭流
mystream.Close();
}
}
catch (Exception ee)
{
MessageBox.Show(ee.Message.ToString());
}
}
如何将Http页面的数据导出为EXCEL
1、一般的excel数据导出应该是服务端后台导出,将文件存放的路径返回前台,前台跳转界面去下载excel文件;
2、 我目前还没看到有直接拿数据做excel导出的,一般都是将数据塞进页面的table表格中(哪怕表格是隐藏的),然后由插件或者网上搜方法针对表格进行excel导出,这种方法网上很多例子的。
关于前端如何导出后台传来的excel接口
题主所说的导出指的是让前端去下载后台的Excel还时还要有其他操作呢?
如果单纯去下载,可以基于XMLHttpRequest请求,请求一个服务器或者后端的Excel文件,然后设置responseType为blob二进制流来传输。例如:
var excelFilePath = 'resources/Excel/importExcel.xlsx';
var xhr = new XMLHttpRequest();
xhr.open('GET', excelFilePath, true);
xhr.responseType = 'blob';
xhr.onload = function(e) {
var blob = this.response;
}
之后onload里面的blob就是这个Excel文件的二进制流,接下来只要将blob转成文件进行下载就可以了,JS中有很多开源的第三方类库可以做到,例如filesaver。如果是用filesaver的话,调用其中的saveAs方法就可以将该blob转成对应文件进行下载
例如
var fileName = "test.xlsx"
saveAs(blob, fileName);
把上述方法加到onload 方法中,前端就会下载一个名为test.xlsx的Excel文件,内容就是后端传过来的Excel
如果还要有其他操作例如展示或者在线的编辑,就需要一些第三方控件来完成了,比如SpreadJS
上述的方法也是在他们的官方论坛中学到的,参考网址:
网页链接