C# Varchar列从DB转换为十六进制(当它转到EXCEL时)
我正在查询SQL Server数据库中的一些值,其中一个值的定义如下:C# Varchar列从DB转换为十六进制(当它转到EXCEL时),c#,sql-server,excel,C#,Sql Server,Excel,我正在查询SQL Server数据库中的一些值,其中一个值的定义如下: varchar(30) xlWorkSheet.Cells[i, 2] = Convert.ToString(item[1]); Range r = xlWorkSheet.Cells; r.NumberFormat = "@"; 当我将其添加到excel时,我会这样做: varchar(30) xlWorkSheet.Cells[i, 2] = Convert.ToString(item[1]); Range
varchar(30)
xlWorkSheet.Cells[i, 2] = Convert.ToString(item[1]);
Range r = xlWorkSheet.Cells;
r.NumberFormat = "@";
当我将其添加到excel时,我会这样做:
varchar(30)
xlWorkSheet.Cells[i, 2] = Convert.ToString(item[1]);
Range r = xlWorkSheet.Cells;
r.NumberFormat = "@";
但现在发生的是:
类似“095315760230”的值转换为“953158E+12”。我缺少什么?尝试创建一个Excel工作簿,将所有单元格格式化为文本,然后粘贴到数据中。尝试创建一个Excel工作簿,将所有单元格格式化为文本,然后粘贴到数据中。多亏了i。Zain和Jacob H,我这样解决了我的问题:
varchar(30)
xlWorkSheet.Cells[i, 2] = Convert.ToString(item[1]);
Range r = xlWorkSheet.Cells;
r.NumberFormat = "@";
多亏了I.Zain和Jacob H,我这样解决了我的问题:
varchar(30)
xlWorkSheet.Cells[i, 2] = Convert.ToString(item[1]);
Range r = xlWorkSheet.Cells;
r.NumberFormat = "@";
单元格/列格式设置为“通用”,自动表示科学符号。将其设置为数字,它应该是固定的。上次我检查时,无论是
、
还是+
通常都不被认为是“十六进制”。单元格/列格式被设置为“常规”,它会自动显示科学符号。将它设置为数字,它应该是固定的。上次我检查时,无论是、
还是+
通常都不被认为是“十六进制”。