我目前用的是如下方法将EXCEL文件导成DATATABLE public DataTable ImportToDataTable(string filepath, string sheetname)
        {            OleDbConnection connection = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;data source=" + filepath + ";Extended Properties='Excel 8.0;HDR=NO;IMEX=1;'");
            DataTable dt = new DataTable();
            connection.Open();
            dt = connection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);            if (dt.Rows.Count > 0)
            {                OleDbDataAdapter adapter = new OleDbDataAdapter("select * from [" + dt.Rows[0]["TABLE_NAME"] + "]", connection);                DataSet set = new DataSet();
                adapter.Fill(set);
                connection.Close();                return set.Tables[0];
            }
            else
            {
                connection.Close();
                return null;
            }
        }本来要求用户导入的是EXCEL文件,这个EXCEL文件也是他们导出的,所以格式不能改变,可是他们导出的虽然是后缀为.XLS的文件,但实际确实文本格式的(用文本打开没有格式,可以正常显示,应该不是EXCEL文件),应该如何修改上面的方法,可以导出这种伪EXCEL格式文件呢,或者换一种方法导入,望高手解答

解决方案 »

  1.   

    你这个看上去像是在用数据库的操作来导入的。
    你也可以直接在工程中引用excel.dll来操作excel文件,读取里面的单元格内容。导出的时候也一样,你可以先用程序建立一份excel文件,把数据写入到单元格。
      

  2.   

    我把问题换一下吧,就是如何将一个txt文件通过代码另存为excel文件啊,可以实现吗
      

  3.   

    就是这种伪EXCEL格式文件,我选择打开方式是记事本,如果是正常的EXCEL文件,应该全是乱码一样的字符,这个确可以正常显示内容,很明显不是EXCEL,但后缀是xls,如何通过代码来将它转成EXCEL,不知道能不能实现。