[高分讨论,UP有分!]关于把excel导入到数据库的讨论! 用OleDataReader 先空读三次,从第四次开始读写数据库! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我这里有个把Excel文件中的数据读入到DataGrid中的例子。应该对你有帮助。<%@ Page language="c#" Codebehind="ExcelToDataGrid.aspx.cs" AutoEventWireup="false" Inherits="StudyDotNet.DataGrid.Excel.ExcelToDataGrid" %><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" ><HTML> <HEAD> <title>风云冰雨工作室</title> <meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1"> <meta name="CODE_LANGUAGE" Content="C#"> <meta name="vs_defaultClientScript" content="JavaScript"> <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5"> </HEAD> <body MS_POSITIONING="GridLayout"> <form id="Form1" method="post" runat="server"> <asp:datagrid id="mygrid" runat="server" AutoGenerateColumns="false" width="100%"> <Columns> <asp:BoundColumn HeaderText="姓名" ReadOnly="true" DataField="姓名" /> <asp:BoundColumn HeaderText="性别" ReadOnly="true" DataField="性别" /> <asp:BoundColumn HeaderText="Email" ReadOnly="true" DataField="地址" /> </Columns> </asp:datagrid> </form> </body></HTML> using System;using System.Collections;using System.ComponentModel;using System.Data;using System.Drawing;using System.Web;using System.Web.SessionState;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.HtmlControls;using System.Data.OleDb;namespace StudyDotNet.DataGrid.Excel{ /// <summary> /// ExcelToDataGrid 的摘要说明。 /// </summary> public class ExcelToDataGrid : System.Web.UI.Page { #region 控件申明 protected System.Web.UI.WebControls.DataGrid mygrid; #endregion #region Page_Load private void Page_Load(object sender, System.EventArgs e) { // 在此处放置用户代码以初始化页面 if (!IsPostBack) { DataGridBind(); } } #endregion #region 数据绑定 private void DataGridBind() { mygrid.DataSource = CreateDataSource(); mygrid.DataBind(); } private DataSet CreateDataSource() { string strConn; strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + MapPathSecure(TemplateSourceDirectory) + "\\xls\\contacts.xls;"+ "Extended Properties=Excel 8.0;"; OleDbConnection conn = new OleDbConnection(strConn); OleDbDataAdapter myCommand = new OleDbDataAdapter("SELECT * FROM [ContactList$]", strConn); DataSet myDataSet = new DataSet(); myCommand.Fill(myDataSet); return myDataSet; } #endregion #region Web 窗体设计器生成的代码 override protected void OnInit(EventArgs e) { // // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。 // InitializeComponent(); base.OnInit(e); } /// <summary> /// 设计器支持所需的方法 - 不要使用代码编辑器修改 /// 此方法的内容。 /// </summary> private void InitializeComponent() { this.Load += new System.EventHandler(this.Page_Load); } #endregion }} 各位老大,导入我成功了,我是说格式复杂的excel导入的时候有些会丢失,因为格式是不规则的,我想问的是"不规则的excel应该如何处理成规则的数据呢?" 后天结贴,望大家能好好讨论下!!!UP UP UP 请教个GridView的问题 初写.net 感觉代码完全浪费啊 关于用metaweblog API供live writer调用的实现 repeater值判断显示 关于定时执行的问题? web.config的怪问题? 使用VS2005 遇到的问题。 Integrated Security=true链接失败 怎么回事? DataView的时间过滤文件 不知道有没有人遇到过.net程序不能DEBUG的情况 怎样查看buffer 里面的信息? 请问如何实现象第2书店的购物车中如果车页面存在,就不在重新弹出而在原页面更新的效果
应该对你有帮助。
<%@ Page language="c#" Codebehind="ExcelToDataGrid.aspx.cs" AutoEventWireup="false" Inherits="StudyDotNet.DataGrid.Excel.ExcelToDataGrid" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>风云冰雨工作室</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<asp:datagrid id="mygrid" runat="server" AutoGenerateColumns="false" width="100%">
<Columns>
<asp:BoundColumn HeaderText="姓名" ReadOnly="true" DataField="姓名" />
<asp:BoundColumn HeaderText="性别" ReadOnly="true" DataField="性别" />
<asp:BoundColumn HeaderText="Email" ReadOnly="true" DataField="地址" />
</Columns>
</asp:datagrid>
</form>
</body>
</HTML>
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.OleDb;namespace StudyDotNet.DataGrid.Excel
{
/// <summary>
/// ExcelToDataGrid 的摘要说明。
/// </summary>
public class ExcelToDataGrid : System.Web.UI.Page
{
#region 控件申明
protected System.Web.UI.WebControls.DataGrid mygrid;
#endregion #region Page_Load
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if (!IsPostBack)
{
DataGridBind();
}
}
#endregion #region 数据绑定
private void DataGridBind()
{
mygrid.DataSource = CreateDataSource();
mygrid.DataBind();
} private DataSet CreateDataSource()
{
string strConn;
strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=" + MapPathSecure(TemplateSourceDirectory) + "\\xls\\contacts.xls;"+
"Extended Properties=Excel 8.0;";
OleDbConnection conn = new OleDbConnection(strConn);
OleDbDataAdapter myCommand = new OleDbDataAdapter("SELECT * FROM [ContactList$]", strConn);
DataSet myDataSet = new DataSet();
myCommand.Fill(myDataSet);
return myDataSet;
}
#endregion #region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load); }
#endregion
}
}