<div align="center">转到:
<input name="page_num" type="text" size="3" value="<[$page_num]>" onKeyPress="if (window.event.keyCode==13){go_click();}" >
页/<[$page_count]>页 <a href="#" onclick=go_click(); >GO</a></div>上面一段文字,程序会自动截取到 <a href="#" ,后面的内容就没有了
你的数据在Excel里面必须是在一行里面
但是我将Excel 表格读取到DataTable 中然排序后,转化成xml文件,xml文件中的内容就会减少。
还有数据的格式是不能换的,空格和换行都要保留,是不是DataSet 对单元格长度有限制??
我是用OLEDB 方式去读Excel 文件的
单元格格式
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + FileName + ";Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'";
DataSet ds = new DataSet();
using(OleDbConnection conn = new OleDbConnection(strConn))
{
conn.Open();
string str = "select * from [sheet1$]";
OleDbDataAdapter da= new OleDbDataAdapter(str, conn);
da.Fill(ds);
conn.Close();
}
如果是强类型数据集的话,试试修改DataColumn的MaxLength的长度普通的DataSet那试试把excel第一行(或第二行)数据改到最长(未必管用)
请看我的帖子,是不是读到datagridview有些单元格出现没数据的情况?读取csv和读取excel一样,都会有这种问题
用OLEDB 方式去读Excel 文件的
也完全没问题
http://dotnet.aspx.cc/c3.rar
我现在是直接用COM方式从Excel表格中读数据。
Excel.Range range = sheet.get_Range(startCell, endCell);
Array values = (System.Array)range.Formula;
但是如果单元格数据量巨大,程序还是会报错
Array values = (System.Array)range.Formula;
//这句会报错
{System.Object ForwardCallToInvokeMember(System.String, System.Reflection.BindingFlags, System.Object, Int32[], System.Runtime.Remoting.Proxies.MessageData ByRef)};