1. 要正确的将Web客户端的Excel文件导入到服务器的数据库中,需要将客户端的Excel文件上传到服务器上。可以使用FileUpload控件完成。
2. Excel文件上传到服务器指定的目录中,这里假设是该站点的upfiles目录中。
3. 使用SQL语句从upfiles目录中的上传Excel文件中读取数据显示或写入数据库。
相关代码如下:
1. 前台文件:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="StudentInforInport.aspx.cs" Inherits="StudentInforInport" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ";
<html xmlns=";
<head runat="server">
<link rel="stylesheet" type="text/css" href="css/style.css"/>
<title>从Excel表中导入学生数据</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<table style="width: 96%; border-collapse: separate; text-align: center">
<tr>
<td colspan="3">
从Excel中导入</td>
</tr>
<tr>
<td colspan="3" style="text-align: left; height: 9px;">
</td>
</tr>
<tr>
<td align="center" style="width: 20%;">
请选择Excel文件路径</td>
<td align="center" style="width: 483px; height: 18px; text-align: left">
<asp:FileUpload ID="FileUpload1" runat="server" Width="555px" /></td>
<td align="center" style="width: 10%">
<asp:Button ID="Btn_Inport" runat="server" Text="导 入" OnClick="Btn_Inport_Click" /></td>
</tr>
<tr>
<td align="center">
请选择表名</td>
<td align="center" style="width: 483px; height: 18px; text-align: left">
<asp:DropDownList ID="DDList_Sheet" runat="server"></asp:DropDownList></td>
<td align="center">
</td>
</tr>
<tr>
<td colspan="3">
<asp:GridView ID="GV_Excel" runat="server" Height="133px" Width="100%">
</asp:GridView>
</td>
</tr>
<tr>
<td style="height: 18px">
</td>
<td style="width: 483px; height: 18px;">
</td>
<td style="width: 243px; height: 18px;">
</td>
</tr>
</table>
</div>
</form>
</body>
</html>
2. 后台代码:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.OleDb;
using System.Data.SqlClient;
public partial class StudentInforInport : System.Web.UI.Page
{
string strConn = System.Configuration.ConfigurationManager.AppSettings["strconn"].ToString().Trim(); //链接SQL数据库
protected void Page_Load(object sender, EventArgs e)
{
}
/// <summary>
/// 查询EXCEL电子表格添加到DATASET
/// </summary>
/// <param name="filenameurl">服务器路径</param>
/// <param name="table">表名</param>
/// <param name="SheetName">Sheet表名</param>
/// <returns>读取的DataSet </returns>
public DataSet ExecleDs(string filenameurl, string table, string SheetName)
{
string strConn = "Provider=Microsoft.Jet.OleDb.4.0;" + "data source=" + filenameurl + ";Extended Properties='Excel 8.0'";
OleDbConnection conn = new OleDbConnection(strConn);
conn.Open();
DataSet ds = new DataSet();
OleDbDataAdapter odda = new OleDbDataAdapter("select * from [" + SheetName + "]", conn);
odda.Fill(ds, table);
return ds;
}
protected void Btn_Inport_Click(object sender, EventArgs e)
{
if (FileUpload1.HasFile == false) //HasFile用来检查FileUpload是否有指定文件
{
Response.Write("<script>alert('请您选择Excel文件')</script> ");
return; //当无文件时,返回
}
string IsXls = System.IO.Path.GetExtension(FileUpload1.FileName).ToString().ToLower();//System.IO.Path.GetExtension获得文件的扩展名
if (IsXls != ".xls")
{
Response.Write("<script>alert('只可以选择Excel文件')</script>");
return; //当选择的不是Excel文件时,返回
}
string filename = DateTime.Now.ToString("yyyyMMddHHmmss") + FileUpload1.FileName; // 获取Execle文件名 DateTime日期函数
string savePath = Server.MapPath(("~\\upfiles\\") + filename); //Server.MapPath 获得虚拟服务器相对路径
FileUpload1.SaveAs(savePath); //SaveAs 将上传的文件内容保存在服务器上
OperExcel Excel = new OperExcel();
ArrayList AL_ExcelSheet = new ArrayList();
AL_ExcelSheet = Excel.ExcelSheetName(savePath);
DDList_Sheet.Items.Clear();
for (int i = 0; i < AL_ExcelSheet.Count; i++)
{
DDList_Sheet.Items.Add( AL_ExcelSheet[i].ToString() );
}
SqlConnection cn = new SqlConnection(strConn);
cn.Open();
DataSet ds = ExecleDs(savePath, filename, DDList_Sheet.Items[0].ToString()); //调用自定义方法得到数据
DataTable dt = ds.Tables[0];
if (dt.Rows.Count == 0)
{
Response.Write("<script>alert('Excel表为空表,无数据!')</script>"); //当Excel表为空时,对用户进行提示
}
else
{
// 数据
GV_Excel.DataSource = dt;
GV_Excel.DataBind();
Response.Write("<script>alert('Excle表导入成功!');location='default.aspx'</script>");
}
cn.Close();
}
}
注意:当导入的Excel文件中的内容很大时,将发生莫名的错误。因此导入的文件不能太大,一般少于5MB.
因为Access不上不下,而且对于微软来说不赚钱。 对于普通用户来说Access本来应该是一个不错的桌面级数据库应用,它天生是文件形式,容易迁移,很容易做后端共享,还有一个我认为相当简单易用的前端制作...
域名使用的是com的话就不用备案,如果使用的是.cn那么: 1.域名要解析到内地服务器,那么这样是必须要备案的 2.域名要解析到海外服务器,比如香港,美国等,这样的情况不用备案,需要写一个解析“《关于...
其实很多律师宣传的网站上注册都是免费的。 但都是页面,相当于是网络名片。没什么用的。要想建站,或者推广都要交钱给他们。这类的网站很多我就不一一例举了。建议你可以考虑【慧剑网】。【慧剑网】那里注册之后给...
1、网站上线,就是开通网站把网站上传到服务器空间上后,输入域名后就可以打开网站。 2、上线流程包含下列几个方面: 2.1. 网络规划:挑选机房、是否需要划分多个网段、 出口是否需要VSRP、交换机...
网站空间简单地讲,就是存放网站内容的空间。网站空间也称为虚拟主机空间,通常企业做网站都不会自己架服务器,而是选择以虚拟主机空间做为放置网站内容的网站空间。网站空间指能存放网站文件和资料,包括文字、文档...
重庆装修是比较多的,单看施工质量的话,许多老牌子的公司都是很不错的。 比如像兄弟装饰、京赛装饰、港宏装饰这些,都是重庆本地很不错的装修公司。 1.兄弟装饰,他们的基装一直在重庆区域做的可以,以至于有的...
首先回答第一个问题,直接通过ip是可以访问网站的,这个在购买时候进行可以提前咨询客服,问清楚后购买。 以个人的经验,如果你买的是虚拟主机,一般需要另外在购买一个独立ip,因为虚拟主机默认的是共享ip(...
后缀是MP4的文件会中病毒,但一般情况是不会有病毒的。 视频格式类文件带的病毒一般有这几种情况: 1、一种是rmvb文件中的弹出窗体有可能链接到病毒网站 2、另一种是wmv格式的视频在...