关于数据导入excel出现列变成了16进制

guchunjia0221 2006-10-31 10:16:58
我导数据用的是这样的方法:
string fileName=getExcelFileName();

FileStream objFileStream;
StreamWriter objStreamWriter;
string strLine="序号"+Convert.ToChar(9);
objFileStream = new FileStream(fileName,FileMode.OpenOrCreate,FileAccess.Write);
objStreamWriter = new StreamWriter(objFileStream,System.Text.Encoding.Unicode);

for(int i=0;i<dt.Columns.Count;i++)
{
strLine=strLine+dt.Columns[i].ColumnName.ToString()+Convert.ToChar(9);
}
objStreamWriter.WriteLine(strLine);
strLine="";

for(int i=0;i<dt.Rows.Count;i++)
{
strLine=strLine+(i+1)+Convert.ToChar(9);
for(int j=0;j<dt.Columns.Count;j++)
{
strLine=strLine+dt.Rows[i][j].ToString()+Convert.ToChar(9);
}
objStreamWriter.WriteLine(strLine);
strLine="";
}
objStreamWriter.Close();
objFileStream.Close();

MessageBox.Show("导出为Excel文件完成","提示" , MessageBoxButtons.OK,MessageBoxIcon.Information);

可是我发现导出的一列电话号码变成了16进制,我应该怎么把他变成10进制!
...全文
878 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
guchunjia0221 2006-10-31
  • 打赏
  • 举报
回复
谢谢你了
supertbt(软件_小菜) !
supesa 2006-10-31
  • 打赏
  • 举报
回复
呵呵,我没办法了
帮你顶下吧
guchunjia0221 2006-10-31
  • 打赏
  • 举报
回复
objStreamWriter.WriteLine(strLine);
strLine变量不就是一个字符串吗?
supesa 2006-10-31
  • 打赏
  • 举报
回复
你把数字先转化成字符串,然后再导出试试
guchunjia0221 2006-10-31
  • 打赏
  • 举报
回复
本来是用另外一种方法的,导出是电话号码,不过太慢了,就改成这种了,可是怎么发现电话号码边16进制了,我比较前后导出的区别,发现那列数字的格式设的都是常规呀!
supesa 2006-10-31
  • 打赏
  • 举报
回复
设置列中显示数据的格式
在Column里边可以设置吧``
具体你查查看,呵呵,我也不太清楚

110,825

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧