...  
foreach(DataRow dr in dt.Rows)
  {
     sw.WriteLine(dr["jj_ypbh"]+"\t"+
          dr["ypmc"]+"\t"+
 dr["gg"]+"\t"+
dr["dw"]+"\t"+
dr["cdmc"]+"\t"+
dr["jj_sl"]+"\t"+
dr["dj"]+"\t");
  }
  sw.Close();
  Response.Buffer= true;
     Response.Charset="";
     Response.AppendHeader("Content-Disposition","attachment;filename=aa.xls");
     Response.ContentType = "application/ms-excel";//设置输出文件类型为excel文件。 
Response.ContentEncoding=System.Text.Encoding.GetEncoding("GB2312");//设置输出流为简体中文
Response.Write(sw);
Response.End();
...1、这样的在列上加一个半角的 ' 还是不行
2、 int zf=39;
    char c=(char)zf;  
     ...
     sw.WriteLine(c.toString()+dr["jj_ypbh"]+"\t"+ ...  
     这样也不行
3、在查询语句中也加半角 ' 也不行
4、在导出的excel文件中,格式为  '001  ,点一下它就变成正常的 001 了,其他的没有变化。请教各位!

解决方案 »

  1.   

    按字符看待的格式化说明和例子
    http://dotnet.aspx.cc/ShowDetail.aspx?id=8A4CBF47-B888-4832-3389-ED3A3A3C8AAB
      

  2.   

    不知道在dr["jj_ypbh"]的前后加个空格行不行
      

  3.   


     net_lover(孟子E章): 我不是重DataGrid 继承的 如何处理? 
      
      

  4.   

    你也可以自己把它构造成这个样子呀<td style="vnd.ms-excel.numberformat:@">123456789123456789</td><td>966.666666666666</td><td>34</td><td style="vnd.ms-excel.numberformat:¥#,###.00">32866.666666666644</td>
    </tr>就可以了
      

  5.   

    你可以事前先设置一.XLT的模板,单元格格式设置为文本。
      

  6.   

    这样来做string s = "000000001";
    StringWriter sw = new StringWriter();
    for(int i= 0;i<10;i++)
    {
    sw.WriteLine(s +"\t" + "=\"" + s + "\"");
    }
    sw.Close();
    Response.Buffer= true;
    Response.Charset="";
    Response.AppendHeader("Content-Disposition","attachment;filename=aa.xls");
    Response.ContentType = "application/ms-excel";//设置输出文件类型为excel文件。 
    Response.ContentEncoding=System.Text.Encoding.GetEncoding("GB2312");//设置输出流为简体中文
    Response.Write(sw);
    Response.End();
      

  7.   

    例子和代码http://dotnet.aspx.cc/ShowDetail.aspx?id=460B81D8-2CA4-41C9-A591-2C41AFF471D0