/// <summary>
/// 读写入EXCel
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void ExcelAll()
{
if (this.TreeView1.Visible == true)
{
if (this.FileUpload1.Visible == true)
{
if (this.FileUpload1.FileName.ToString().Trim() == "")
{
Page.ClientScript.RegisterStartupScript(Page.GetType(), "message", "<script language='javascript' defer>alert('请打开浏览选择EXcel!');</script>");
return;
}
}
else
{
Page.ClientScript.RegisterStartupScript(Page.GetType(), "message", "<script language='javascript' defer>alert('请选择点击一个菜单内容!');</script>");
return;
}
}
else
{
Page.ClientScript.RegisterStartupScript(Page.GetType(), "message", "<script language='javascript' defer>alert('请点击确定!');</script>");
return;
} string path = System.Web.HttpContext.Current.Server.MapPath("Excel/" + this.FileUpload1.FileName + "");
FileUpload1.SaveAs(path);
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path + ";Extended Properties='Excel 8.0;HDR=YES;IMEX=1'";
//链接Excel
OleDbConnection cnnxls = new OleDbConnection(strConn);
//读取Excel里面有 表Sheet1
OleDbDataAdapter oda = new OleDbDataAdapter("select * from [Sheet1$]", cnnxls);
DataSet ds = new DataSet();
//将Excel里面有表内容装载到内存表中!
oda.Fill(ds);
DataTable dt = ds.Tables[0];
System.Data.DataView dv = dt.DefaultView;
foreach (DataRowView drv in dv)
{
mod.FirstClassID = Convert.ToInt32(this.drpfirstclass.SelectedValue.ToString());
mod.LastClassID = Convert.ToInt32(this.drplastclass.SelectedValue.ToString());
mod.ClassficationID = Convert.ToInt32(this.drpclassfication.SelectedValue.ToString());
mod.KnowledgeContene = drv["KnowledgeContene"].ToString();
mod.Pid = int.Parse(this.TreeView1.SelectedValue.ToString());
int ret = bll1.Add(mod);
if (ret > 0)
{
Page.ClientScript.RegisterStartupScript(Page.GetType(), "message", "<script language='javascript' defer>alert('添加数据成功!');</script>");
}
else
{
Page.ClientScript.RegisterStartupScript(Page.GetType(), "message", "<script language='javascript' defer>alert('添加失败!');</script>");
}
}
}/// <summary>
/// 创建树
/// </summary>
/// <param name="PranteID"></param>
/// <param name="node"></param>
protected void createTree(string PranteID, TreeNode node)
{
DataView dv = text_data(" Pid='" + PranteID + "'").DefaultView; foreach (DataRowView drv in dv)
{
TreeNode nodes = new TreeNode(drv["KnowledgeContene"].ToString());
nodes.Value = drv["KnowledgeID"].ToString();
node.ChildNodes.Add(nodes);
createTree(drv["KnowledgeID"].ToString(), nodes);
}
}
protected DataTable text_data(string whereSql)
{
DataTable dt = bll1.GetList(whereSql).Tables[0]; return dt; }
这个代码只能实现在excel里面含有“KnowledgeContene”的那一列,我现在是要excel里面
有理数 整式 这个第一行
正数和负数 单项式 这是第二行
在treeview里面我要第一行作为一级标题,第二行自动判断第一行的PID,然后做为相应的二级标题,我要怎么做啊?
/// 读写入EXCel
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void ExcelAll()
{
if (this.TreeView1.Visible == true)
{
if (this.FileUpload1.Visible == true)
{
if (this.FileUpload1.FileName.ToString().Trim() == "")
{
Page.ClientScript.RegisterStartupScript(Page.GetType(), "message", "<script language='javascript' defer>alert('请打开浏览选择EXcel!');</script>");
return;
}
}
else
{
Page.ClientScript.RegisterStartupScript(Page.GetType(), "message", "<script language='javascript' defer>alert('请选择点击一个菜单内容!');</script>");
return;
}
}
else
{
Page.ClientScript.RegisterStartupScript(Page.GetType(), "message", "<script language='javascript' defer>alert('请点击确定!');</script>");
return;
} string path = System.Web.HttpContext.Current.Server.MapPath("Excel/" + this.FileUpload1.FileName + "");
FileUpload1.SaveAs(path);
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path + ";Extended Properties='Excel 8.0;HDR=YES;IMEX=1'";
//链接Excel
OleDbConnection cnnxls = new OleDbConnection(strConn);
//读取Excel里面有 表Sheet1
OleDbDataAdapter oda = new OleDbDataAdapter("select * from [Sheet1$]", cnnxls);
DataSet ds = new DataSet();
//将Excel里面有表内容装载到内存表中!
oda.Fill(ds);
DataTable dt = ds.Tables[0];
System.Data.DataView dv = dt.DefaultView;
foreach (DataRowView drv in dv)
{
mod.FirstClassID = Convert.ToInt32(this.drpfirstclass.SelectedValue.ToString());
mod.LastClassID = Convert.ToInt32(this.drplastclass.SelectedValue.ToString());
mod.ClassficationID = Convert.ToInt32(this.drpclassfication.SelectedValue.ToString());
mod.KnowledgeContene = drv["KnowledgeContene"].ToString();
mod.Pid = int.Parse(this.TreeView1.SelectedValue.ToString());
int ret = bll1.Add(mod);
if (ret > 0)
{
Page.ClientScript.RegisterStartupScript(Page.GetType(), "message", "<script language='javascript' defer>alert('添加数据成功!');</script>");
}
else
{
Page.ClientScript.RegisterStartupScript(Page.GetType(), "message", "<script language='javascript' defer>alert('添加失败!');</script>");
}
}
}/// <summary>
/// 创建树
/// </summary>
/// <param name="PranteID"></param>
/// <param name="node"></param>
protected void createTree(string PranteID, TreeNode node)
{
DataView dv = text_data(" Pid='" + PranteID + "'").DefaultView; foreach (DataRowView drv in dv)
{
TreeNode nodes = new TreeNode(drv["KnowledgeContene"].ToString());
nodes.Value = drv["KnowledgeID"].ToString();
node.ChildNodes.Add(nodes);
createTree(drv["KnowledgeID"].ToString(), nodes);
}
}
protected DataTable text_data(string whereSql)
{
DataTable dt = bll1.GetList(whereSql).Tables[0]; return dt; }
这个代码只能实现在excel里面含有“KnowledgeContene”的那一列,我现在是要excel里面
有理数 整式 这个第一行
正数和负数 单项式 这是第二行
在treeview里面我要第一行作为一级标题,第二行自动判断第一行的PID,然后做为相应的二级标题,我要怎么做啊?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货