c#使用StreamWriter导出DataGridView数据到excel中的格式问题 本帖最后由 zhouwen 于 2010-10-26 20:50:50 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 楼主写出来的是文本文件,Excel打开后显示给我们的是格式化的0998 写的时候写成 "0998"if(k==3) columnValue += """"+dgvGF_IN_INFO.Rows[j].Cells[k].Value.ToString() + """"; 导出cvs文件,是可以认到前面的0添加Microsoft.Office.Interop.Excel的引用,使用Excel类操作使用'mySheet.Cells(1,9).NumberFormatLocal = "@" Excel.Range r = mySheet.get_Range(mySheet.Cells[1, 1], mySheet.Cells[1,3]); r.NumberFormat = "@"; r.NumberForma = "0.00_ " 你的方法导出的其实是csv(逗号分隔的)文件,扩展名为 .csv 的。按照楼上所说的两边加上双引号就能保证显示。(Excel当做文字列来显示) if(k==3) columnValue += """"+dgvGF_IN_INFO.Rows[j].Cells[k].Value.ToString() + """";是会编译时直接报错的!如果用if(k==3) columnValue += "\""+dgvGF_IN_INFO.Rows[j].Cells[k].Value.ToString() + "\"";还是原来的情况:0998,但导出后,就变成了998(数字格式了)如果用if(k==3) columnValue += @"""+dgvGF_IN_INFO.Rows[j].Cells[k].Value.ToString() + @""";出现:+dgvGF_IN_INFO.Rows[j].Cells[k].Value.ToString()+@ sorry,记差了csv 里没办法,要么用com,要么前面加个 ',然后和客户解释一下,其实这个对于客户来说不算什么,而楼主可以少些很多代码 lz,你的问题我也遇到过,当时还涉及到合并单元格的问题,我最后就写一个含table的html源码,存的时候直接是存成.xls文件就ok了 写一个含table的html源码,可惜没这个水平。 C# WinForm开发系列 - Excel 如果用:@"="" + "09988" + @"""即 if(k==3) columnValue += @"=""+dgvGF_IN_INFO.Rows[j].Cells[k].Value.ToString()+@""";在Excel中出现+dgvGF_IN_INFO.Rows[j].Cells[k].Value.ToString()+@ DataGridView可以指定某列的事件吗? Ophone会不会支持C#开发或C++开发 C#会反射技术的进 如何把这样的文本内容存入数据库? Socket连接问题.大家进来看看. IE下 Ajax错误信息 Bad Request(invalid url) 在看书时,碰到一个问题,百思不得其解.请给予帮助了 请发表你的看法,关于企业逻辑布署问题。 关于http响应结束的问题 C#创建web应用初级问题 怎么指定程序调试、运行于某个 .net framework 版本? winform c# 验证数字 精度 有效位
if(k==3)
columnValue += """"+dgvGF_IN_INFO.Rows[j].Cells[k].Value.ToString() + """";
添加Microsoft.Office.Interop.Excel的引用,使用Excel类操作
使用'
mySheet.Cells(1,9).NumberFormatLocal = "@"
Excel.Range r = mySheet.get_Range(mySheet.Cells[1, 1], mySheet.Cells[1,3]);
r.NumberFormat = "@";
r.NumberForma = "0.00_ "
columnValue += """"+dgvGF_IN_INFO.Rows[j].Cells[k].Value.ToString() + """";
是会编译时直接报错的!
如果用
if(k==3)
columnValue += "\""+dgvGF_IN_INFO.Rows[j].Cells[k].Value.ToString() + "\"";
还是原来的情况:0998,但导出后,就变成了998(数字格式了)
如果用
if(k==3)
columnValue += @"""+dgvGF_IN_INFO.Rows[j].Cells[k].Value.ToString() + @""";
出现:
+dgvGF_IN_INFO.Rows[j].Cells[k].Value.ToString()+@
@"="" + "09988" + @"""
即
if(k==3)
columnValue += @"=""+dgvGF_IN_INFO.Rows[j].Cells[k].Value.ToString()+@""";
在Excel中出现
+dgvGF_IN_INFO.Rows[j].Cells[k].Value.ToString()+@