Когда я ввожу значение 0,003
в моем документе Ecxel, значение, которое я получаю в своем коде, равно 3.0000000000000001E-3
с DataType
, равным нулю. Когда я использую 0,03
в качестве значения, все работает как положено. Таким образом, проблема заключается в использовании более 2 десятичных знаков.
Как я могу это исправить? Вот код, который я использую:
private string GetCellValue(Cell cell)
{
var stringTablePart = _excelDocument.WorkbookPart.SharedStringTablePart;
var value = cell?.CellValue?.InnerXml;
if (cell?.DataType != null && cell.DataType.Value == CellValues.SharedString)
{
return stringTablePart.SharedStringTable.ChildElements[int.Parse(value)].InnerText;
}
return value;
}