c# datagridview 导出excel 身份证变成科学计数法问题!!!
privatevoidDataGridViewToExcel(DataGridViewdgv){SaveFileDialogdlg=newSaveFileDialog()...
private void DataGridViewToExcel(DataGridView dgv)
{
SaveFileDialog dlg = new SaveFileDialog();
dlg.Filter = "Execl files (*.xls)|*.xls";
dlg.FilterIndex = 0;
dlg.RestoreDirectory = true;
dlg.CreatePrompt = true;
dlg.Title = "保存为Excel文件";
if (dlg.ShowDialog() == DialogResult.OK)
{
Stream myStream;
myStream = dlg.OpenFile();
StreamWriter sw = new StreamWriter(myStream, System.Text.Encoding.GetEncoding(-0));
string columnTitle = "";
try
{
//写入列标题
for (int i = 0; i < dgv.ColumnCount; i++)
{
if (i > 0)
{
columnTitle += "\t";
}
columnTitle += dgv.Columns[i].HeaderText;
}
sw.WriteLine(columnTitle);
//写入列内容
for (int j = 0; j < dgv.Rows.Count; j++)
{
string columnValue = "";
for (int k = 0; k < dgv.Columns.Count; k++)
{
if (k > 0)
{
columnValue += "\t";
}
if (dgv.Rows[j].Cells[k].Value == null)
columnValue += "";
else
{
columnValue += "'" + dgv.Rows[j].Cells[k].Value.ToString();
}
}
sw.WriteLine(columnValue);
}
sw.Close();
myStream.Close();
}
catch (Exception e)
{
MessageBox.Show(e.ToString());
}
finally
{
sw.Close();
myStream.Close();
}
}
}
======================
如何显示成文本呢 展开
{
SaveFileDialog dlg = new SaveFileDialog();
dlg.Filter = "Execl files (*.xls)|*.xls";
dlg.FilterIndex = 0;
dlg.RestoreDirectory = true;
dlg.CreatePrompt = true;
dlg.Title = "保存为Excel文件";
if (dlg.ShowDialog() == DialogResult.OK)
{
Stream myStream;
myStream = dlg.OpenFile();
StreamWriter sw = new StreamWriter(myStream, System.Text.Encoding.GetEncoding(-0));
string columnTitle = "";
try
{
//写入列标题
for (int i = 0; i < dgv.ColumnCount; i++)
{
if (i > 0)
{
columnTitle += "\t";
}
columnTitle += dgv.Columns[i].HeaderText;
}
sw.WriteLine(columnTitle);
//写入列内容
for (int j = 0; j < dgv.Rows.Count; j++)
{
string columnValue = "";
for (int k = 0; k < dgv.Columns.Count; k++)
{
if (k > 0)
{
columnValue += "\t";
}
if (dgv.Rows[j].Cells[k].Value == null)
columnValue += "";
else
{
columnValue += "'" + dgv.Rows[j].Cells[k].Value.ToString();
}
}
sw.WriteLine(columnValue);
}
sw.Close();
myStream.Close();
}
catch (Exception e)
{
MessageBox.Show(e.ToString());
}
finally
{
sw.Close();
myStream.Close();
}
}
}
======================
如何显示成文本呢 展开
展开全部
这个是你的数据源excel表中的格式问题。只要修改列的格式为“文本”就行了。
操作:在你的excel文件里,选择身份证那一列,点右键,然后选择“设置单元格格式”,把“数字”下面的“分类”,设置成“文本”。
操作:在你的excel文件里,选择身份证那一列,点右键,然后选择“设置单元格格式”,把“数字”下面的“分类”,设置成“文本”。
追问
不管用的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你可以在导出身份证那一列的内容前加上一标点的——‘
追问
加上以后打开excel 就显示出'了
追答
只是单元格上显示个绿色小三角吧,如果不影响就算了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
设置导出时这个字段的类型
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询