C#中datagridview导出Excel将身份证号设置为文本格式,而不是科学计数法格式
这是对比图片。//源代码publicvoidExportDataGridViewToExcel(DataGridViewdataGridview1){//利用Stream...
这是对比图片。//源代码 public void ExportDataGridViewToExcel(DataGridView dataGridview1) { //利用Stream(流)的方式 SaveFileDialog saveFileDialog = new SaveFileDialog(); saveFileDialog.Filter = "Execl files (*.xls)|*.xls"; saveFileDialog.FilterIndex = 0; saveFileDialog.RestoreDirectory = true; saveFileDialog.CreatePrompt = true; saveFileDialog.Title = "导出Excel文件到"; DateTime now = DateTime.Now; saveFileDialog.FileName = now.Year.ToString().PadLeft(2) + now.Month.ToString().PadLeft(2, '0') + now.Day.ToString().PadLeft(2, '0') + "-" + now.Hour.ToString().PadLeft(2, '0') + now.Minute.ToString().PadLeft(2, '0') + now.Second.ToString().PadLeft(2, '0'); saveFileDialog.ShowDialog(); Stream myStream; myStream = saveFileDialog.OpenFile(); StreamWriter sw = new StreamWriter(myStream, System.Text.Encoding.GetEncoding("gb2312")); string str = ""; try { //写标题 for (int i = 0; i < dataGridview1.ColumnCount; i++) { if (i > 0) { str += "\t"; } str += dataGridview1.Columns[i].HeaderText; } sw.WriteLine(str); //写内容 for (int j = 0; j < dataGridview1.Rows.Count; j++) { string tempStr = ""; for (int k = 0; k < dataGridview1.Columns.Count; k++) { if (k > 0) { tempStr += "\t"; } tempStr += dataGridview1.Rows[j].Cells[k].Value.ToString(); } sw.WriteLine(tempStr); } sw.Close(); myStream.Close(); MessageBox.Show("成功导出Excel"); } catch (Exception e) { MessageBox.Show(e.ToString()); } finally { sw.Close(); myStream.Close(); } }
展开
3个回答
展开全部
在身份证的数字开头前加个单引号(')就行了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
if(id.length>15)
s="'"+s;
return s;
s="'"+s;
return s;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个问题比较具体。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询