全职写在一个单元格里

Write in a cell full time

我有一个变量 time,其中包含带时间的字符串,格式为 h:m:s.ms

这次我试图在一个单元格中写字,但是当我打开 excel 时,我看到了类似 12:34:14 PM 的东西。 但是我想看12:34:14.1354

我该如何解决这个问题?

var line = "2019-07-18 11:07:42.6101";
var time = line.Substring(11, 13);

worksheet.Cell(row, column).Value = time;

试试

worksheet.Cell(row,column).Style.NumberFormat.Format = "h:mm:ss.SSSS";

我不是 100% 确定格式字符串是否正确。也许您通过忽略毫秒部分开始尝试。比较一下:https://github.com/ClosedXML/ClosedXML/wiki/Data-Types

更新:反映anthony14对答案的评论,正确的代码是

worksheet.Cell(row,column).Style.NumberFormat.Format = "h:mm:ss.ms";

使用像“h:mm:ss.000”这样的格式字符串,零数从 1 到 3。它对我有用:

worksheet.Cell(row,column).Style.NumberFormat.Format = "h:mm:ss.000"