删除了ClosedXML中的 SetDataType



我正在尝试使用c#中的SetDataType()方法将单元格的数据类型设置为String:

worksheet.Cell(x, y).SetDataType(XLDataType.Text); 

SetDataType()从0.94.0开始从ClosedXML中删除。我现在不知道如何解决我的问题。

我应该使用SetValue()吗?它是否自动将单元格的类型设置为传递给的值的类型?

谢谢

编辑对我来说,也是"通用"的类型。(没有特定格式)可以

// To set the DataType
worksheet.Cell(1, 1).DataType = XLDataType.Text;
// To set the Value for the cell
worksheet.Cell(1, 1).Value = "Example";
背景:

这也适用于列(i),行(i)或范围(i, j)据我所知,大多数值将自动映射。如果您想手动映射这些值,您可以这样做:

private static XLDataType GetExcelTypeMapping(object value) => value switch {
int => XLDataType.Number,
decimal => XLDataType.Number,
string => XLDataType.Text,
bool => XLDataType.Boolean,
System.DateTime => XLDataType.DateTime,
_ => throw new NotSupportedException($"{value} is not supported."),
};

:

foreach (var value in values.FirstOrDefault()) {
int i = 1;
worksheet.Column(i) = GetExcelTypeMapping(object value);
i++;
}

代码中的。该示例基于IEnumerable

相关内容

  • 没有找到相关文章

最新更新