完美解决Excel的连接字符串与上传方法
2012-10-26 10:07
281 查看
1:第一个连接字符串为上传03的,第2个连接字符串能兼容所有的
//string strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filenameurl + ";extended properties='Excel 8.0;HDR=No;IMEX=1;'";
string strCon = "Provider=Microsoft.ACE.OLEDB.12.0;" + "Data Source=" + filenameurl + ";" + "Extended Properties=Excel 8.0;";
2:导入按钮
protected void btnExport_Click(object sender,EventArgs e)
{
if (FileUpload1.HasFile == false)
{
Response.Write("<script>alert('请您选择Excel文件')</script> ");
return;//当无文件时,返回
}
string IsXls = System.IO.Path.GetExtension(FileUpload1.FileName).ToString().ToLower();
if (IsXls != ".xls" && IsXls != ".xlsx")
{
Response.Write("<script>alert('只可以选择Excel文件')</script>");
return;//当选择的不是Excel文件时,返回
}
string filename = FileUpload1.FileName; //获取Execle文件名
if (!Directory.Exists(path))
{
Directory.CreateDirectory(path);
}
string FilePath = path + filename;
if (File.Exists(FilePath))
File.Delete(FilePath);
//FileUpload1.SaveAs(path + filename);
DataTable ds = ExecleDs(path + filename);
}
private DataTable ExecleDs(string filenameurl)
{
//string strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filenameurl + ";extended properties='Excel 8.0;HDR=No;IMEX=1;'";
string strCon = "Provider=Microsoft.ACE.OLEDB.12.0;" + "Data Source=" + filenameurl + ";" + "Extended Properties=Excel 8.0;";
OleDbConnection conn = new OleDbConnection(strCon);
OleDbDataAdapter odda = new OleDbDataAdapter("select * from [Sheet1$]", conn);
DataTable dt = new DataTable();
odda.Fill(dt);
return dt;
}
//string strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filenameurl + ";extended properties='Excel 8.0;HDR=No;IMEX=1;'";
string strCon = "Provider=Microsoft.ACE.OLEDB.12.0;" + "Data Source=" + filenameurl + ";" + "Extended Properties=Excel 8.0;";
2:导入按钮
protected void btnExport_Click(object sender,EventArgs e)
{
if (FileUpload1.HasFile == false)
{
Response.Write("<script>alert('请您选择Excel文件')</script> ");
return;//当无文件时,返回
}
string IsXls = System.IO.Path.GetExtension(FileUpload1.FileName).ToString().ToLower();
if (IsXls != ".xls" && IsXls != ".xlsx")
{
Response.Write("<script>alert('只可以选择Excel文件')</script>");
return;//当选择的不是Excel文件时,返回
}
string filename = FileUpload1.FileName; //获取Execle文件名
if (!Directory.Exists(path))
{
Directory.CreateDirectory(path);
}
string FilePath = path + filename;
if (File.Exists(FilePath))
File.Delete(FilePath);
//FileUpload1.SaveAs(path + filename);
DataTable ds = ExecleDs(path + filename);
}
private DataTable ExecleDs(string filenameurl)
{
//string strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filenameurl + ";extended properties='Excel 8.0;HDR=No;IMEX=1;'";
string strCon = "Provider=Microsoft.ACE.OLEDB.12.0;" + "Data Source=" + filenameurl + ";" + "Extended Properties=Excel 8.0;";
OleDbConnection conn = new OleDbConnection(strCon);
OleDbDataAdapter odda = new OleDbDataAdapter("select * from [Sheet1$]", conn);
DataTable dt = new DataTable();
odda.Fill(dt);
return dt;
}
相关文章推荐
- 完美解决Excel的连接字符串与上传方法
- Excel 超连接图片文件默认用IE打开解决方法
- [转]数据库连接方式读取不到Excel数据值的解决方法
- Java CMS提交内容中带中文导致乱码修改jdbc连接字符串来解决的方法
- RedisDesktopManager无法远程连接Redis的完美解决方法
- java中读取excel文件中字符串乱码问题解决方法
- ASP 二进制与字符串互转, 另类完美解决方法, adodb.stream 实现 By shawl.qiu
- php使用ftp远程上传文件类(完美解决主从文件同步问题的方法)
- jsp 页面导出excel时字符串数字变成科学计数法的解决方法
- OLEDB方式读取Excel丢失数据、字符串截断的原因和解决方法
- java中读取excel文件中字符串乱码问题解决方法
- AJaxFileUpload 文件上传<pre>,json字符串为空解决方法
- .NET连接数据库字符串密码丢失的解决方法(persist security info=true;)
- CF MVC3此操作要求连接到 'master' 数据库。无法创建与 'master' 数据库之间的连接,这是因为已打开原始数据库连接,并且已从连接字符串中删除凭据。请提供未打开的连接 解决方法
- IP连接SQL SERVER失败(配置为字符串失败)图文解决方法
- 远程连接MySQL,防火墙阻止访问,解决方法【完美】
- 【Vegas原创】Excel中,日期和时间用&连接后格式不正确的解决方法
- 数组方法解决JS字符串连接性能问题有争议
- 解决asp.net Sharepoint无法连接发布自定义字符串处理程序,不能进行输出缓存处理的方法
- 织梦上传服务器后数据连接失败问题的解决方法