• Asp.net读取Excel文件 2


    如果你经常光临Insus.NET的博客,你会留意到有一篇博文 Asp.net读取Excel文件 那只是列出Excel两个版本的连接语句。但是你的专案在应用时,也许不能固定用户只上传某一种版本的Excel文件而你在专案中取舍使用哪一种连接字串,所以你会尝试使用下面方法去解决,判断上传的Excel文件是什么版本的:

    View Code
     public static string GetExcelConnectionString(string file)
            {
                
    string connectionString = string.Empty;
                
    string fileExtension = file.Substring(file.LastIndexOf("."+ 1);
                
    switch (fileExtension)
                {
                    
    case "xls":
                        connectionString 
    = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + HttpContext.Current.Server.MapPath(file) + ";Extended Properties='Excel 8.0;HDR=YES;IMEX=1'";
                        
    break;
                    
    case "xlsx":
                        connectionString 
    = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + HttpContext.Current.Server.MapPath(file) + ";Extended Properties='Excel 12.0 Xml;HDR=YES;IMEX=1'";
                        
    break;
                }
                
    return connectionString;
            }

    在专案中调用时(代码部分):

    View Code
     //从数据库取得上传的Excel文件名
            string file = objDictionary["FileFullName"].ToString();
            
    //获取中Excel的连接字串。
            string excelConnectionString = GetExcelConnectionString(file);
           
    //传入至OleDbConnection实例中去
            OleDbConnection objConn = new OleDbConnection(excelConnectionString);
            
    string sql = "SELECT * FROM [Sheet1$]";
            OleDbDataAdapter ObjDa 
    = new OleDbDataAdapter(sql, objConn);
            DataSet objDs 
    = new DataSet();
            ObjDa.Fill(objDs);
  • 相关阅读:
    以JPanel为基础实现一个图像框
    扩展JButton实现自己的图片按钮
    箴言录2014年4月22日
    搜集整理一些Cron表达式例子
    长途旅行感悟
    箴言录2014年4月19日
    Linux下显示硬盘空间的两个命令
    Linux命令复习和练习_02
    Dash:程序员的的好帮手
    Linux的桌面环境gnome、kde、xfce、lxde 等等使用比较
  • 原文地址:https://www.cnblogs.com/insus/p/2037808.html
Copyright © 2020-2023  润新知