代码如下: org.in2bits.MyXls.XlsDocument Xls = new XlsDocument();
Xls.FileName = "Ext.xls";
org.in2bits.MyXls. Worksheet Xsheet = Xls.Workbook.Worksheets.AddNamed("Sheet1");
org.in2bits.MyXls.Cells cells = Xsheet.Cells; int Rcount = myds.Tables[0].Rows.Count;
int Ccount = myds.Tables[0].Columns.Count; /*
for (int T = 0; T < Tiltle.Length; T++)
{
cells.AddValueCell(1, T+1, Tiltle[T].ToString().Trim());
}*/ int i,j;
int RowIndex = 2;
for (i = 1; i <= myds.Tables[0].Rows.Count;i++)
{
for ( j = 1; j <= myds.Tables[0].Columns.Count; j++)
{
if (j == 7)
{ cells.AddValueCell(RowIndex, j, Convert.ToDouble(myds.Tables[0].Rows[i - 1][j - 1].ToString()));
//cells.AddValueCell(i,j, );
} // else
// {
// org.in2bits.MyXls.Cell cell = cells.AddValueCell(i,j, myds.Tables[0].Rows[i-1][j-1].ToString()); //} }
RowIndex++;
}
Xls.Save(@"E:\CompanySystemTest\系統\Bill_Analysis\");
myda.Dispose();
myds.Dispose();
cn.Close();
执行上段代码时 页面就会跳出NumberVal 不知道是那里出现问题,请各位大侠指点!
Xls.FileName = "Ext.xls";
org.in2bits.MyXls. Worksheet Xsheet = Xls.Workbook.Worksheets.AddNamed("Sheet1");
org.in2bits.MyXls.Cells cells = Xsheet.Cells; int Rcount = myds.Tables[0].Rows.Count;
int Ccount = myds.Tables[0].Columns.Count; /*
for (int T = 0; T < Tiltle.Length; T++)
{
cells.AddValueCell(1, T+1, Tiltle[T].ToString().Trim());
}*/ int i,j;
int RowIndex = 2;
for (i = 1; i <= myds.Tables[0].Rows.Count;i++)
{
for ( j = 1; j <= myds.Tables[0].Columns.Count; j++)
{
if (j == 7)
{ cells.AddValueCell(RowIndex, j, Convert.ToDouble(myds.Tables[0].Rows[i - 1][j - 1].ToString()));
//cells.AddValueCell(i,j, );
} // else
// {
// org.in2bits.MyXls.Cell cell = cells.AddValueCell(i,j, myds.Tables[0].Rows[i-1][j-1].ToString()); //} }
RowIndex++;
}
Xls.Save(@"E:\CompanySystemTest\系統\Bill_Analysis\");
myda.Dispose();
myds.Dispose();
cn.Close();
执行上段代码时 页面就会跳出NumberVal 不知道是那里出现问题,请各位大侠指点!
public void OutPutExcel(DataTable dt, HttpResponse Response)
{
if (dt == null)
{
ShowMsgBLL.MsgDivBox(3, "要导出的内容为空", "");
return;
}
Response.Clear();
Response.Buffer = true;
//设定输出的字符集
Response.Charset = "utf-8";
Response.AddHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls", System.Text.Encoding.GetEncoding("utf-8")));
Response.ContentEncoding = System.Text.Encoding.GetEncoding("utf-8");
//设置导出文件的格式
Response.ContentType = "application/ms-excel"; ;
StringBuilder strOutputHtml = new StringBuilder();
string NumberAsTextExp = "vnd.ms-excel.numberformat:@";
strOutputHtml.Append("<table border = 1>");
//取得数据表各列标题
foreach (DataColumn dc in dt.Columns)
{
strOutputHtml.Append("<th scope='col'>");
strOutputHtml.Append(dc.ColumnName.ToString());
strOutputHtml.Append("</th>");
}
strOutputHtml.Append("</tr>");
//逐列获得数据
foreach (DataRow dr in dt.Rows)
{
strOutputHtml.Append("<tr>");
foreach (DataColumn dc in dt.Columns)
{
string strdc = dr[dc].ToString(); System.Text.RegularExpressions.Regex reg1
= new System.Text.RegularExpressions.Regex(@"^[-]?\d+[.]?\d*$");
if (dc.DataType == System.Type.GetType("System.String") && reg1.IsMatch(strdc)) //长字符串数字(9位以上)
strOutputHtml.Append("<td style='" + NumberAsTextExp + "'>"); //将数字按字符串格式导出,比如身份证号码
else
strOutputHtml.Append("<td>"); strOutputHtml.Append(strdc);
strOutputHtml.Append("</td>");
}
strOutputHtml.Append("</tr>");
}
strOutputHtml.Append("</table>"); //向HTTP输出流中写入
Response.Write(strOutputHtml.ToString());
Response.Flush();
Response.End();
}