导入excel文件内容到页面

Rhaegar1204 2010-12-20 09:03:08
在一个ASP项目中需要导入本地机上面的excel文件内容到页面上来。本来用excel文件做数据源,填充一个DataSet后把DataTable的内容传给GridView。后来测试发现本机运行可以,放到IIS上面在局域网中运行就不行了。
string file = FileUpload1.PostedFile.FileName;
DataSet dst = Import(file);
有什么简单易行的方法吗?
...全文
125 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
net5354 2010-12-21
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 yashiro1204 的回复:]
引用 5 楼 net5354 的回复:

1、你在本机测试就可以了
2、用动态域名解析,如我的:http://nz.oicp.net:81

我现在的问题是没有FTP服务,不能上传文件。
[/Quote]不需要FTP服务器的
wuyq11 2010-12-20
  • 打赏
  • 举报
回复
fileupload上传,文件夹路径权限,路径是否存在
net5354 2010-12-20
  • 打赏
  • 举报
回复
//用GridView1//页面显示数据

if (FileUpload1.HasFile)
{//上传Excel文件到服务器
string fileExt = System.IO.Path.GetExtension(FileUpload1.FileName);//文件扩展名
if (fileExt == ".xls")
{
string filenameid = System.DateTime.Now.ToString("yyyyMMddhhmmssff") + ".xls";//定义文件名为年:2008.xsl的格式
string serverpath = Server.MapPath("~/xls/") + filenameid;//保存路径
FileUpload1.PostedFile.SaveAs(serverpath);//保存上传的Excel文件

//连接Excel文件,读入myDstaSet
String strConnectionString = string.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties='Excel 8.0;IMEX=1'", serverpath);
OleDbConnection Excel_conn = new OleDbConnection(strConnectionString);
Excel_conn.Open();
DataTable dtExcelSchema = Excel_conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });//建立连接Excel的数据表
string SheetName = "";
SheetName = dtExcelSchema.Rows[0]["TABLE_NAME"].ToString();//取出第一个工作表我名称
Excel_conn.Close();
//Label1.Text = SheetName;

string query = "SELECT * FROM " + "[" + SheetName + "]";//查询Excel字符串
OleDbDataAdapter oleAdapter = new OleDbDataAdapter(query, Excel_conn);
DataSet myDataSet = new DataSet();
Excel_conn.Open();
oleAdapter.Fill(myDataSet, "Excel_Sheet1");
Excel_conn.Close();

GridView1.DataSource = myDataSet.Tables["Excel_Sheet1"];
GridView1.DataBind();//页面显示数据

}
else
{//格式不符
Page.ClientScript.RegisterStartupScript(GetType(), "sf", "<script language='javascript'>alert('提示:\\n您导入的Excel格式不符!\\n请按模板的列名和顺序及字段格式');document.all('FileUpload1').focus()</script>");
}
}
else
{
Label1.Text = "您上传的:‘" + System.IO.Path.GetFileName(FileUpload1.FileName) + "’文件,不是Excel.xls文件,不能导入。";
}
}
Rhaegar1204 2010-12-20
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 strife 的回复:]

服务器可能没装excel插件?或是没有那个数据文件
[/Quote]
要求在浏览页面的时候把本地文件导入
strife013 2010-12-20
  • 打赏
  • 举报
回复
服务器可能没装excel插件?或是没有那个数据文件
Rhaegar1204 2010-12-20
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 net5354 的回复:]

1、你在本机测试就可以了
2、用动态域名解析,如我的:http://nz.oicp.net:81
[/Quote]
我现在的问题是没有FTP服务,不能上传文件。
net5354 2010-12-20
  • 打赏
  • 举报
回复
1、你在本机测试就可以了
2、用动态域名解析,如我的:http://nz.oicp.net:81
Rhaegar1204 2010-12-20
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 net5354 的回复:]

//用GridView1//页面显示数据

if (FileUpload1.HasFile)
{//上传Excel文件到服务器
string fileExt = System.IO.Path.GetExtension(FileUpload1.FileName);//文件扩展名
if (fileExt……
[/Quote]
没有FTP服务怎么办呢?就不能实现了吗?

62,047

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧