Я пытаюсь прочитать файл Excel в таблицу данных, и я получаю данные успешно, но десятичные значения усекаются при чтении данных в таблицу данных
Итак, если у меня есть значение ячейкикак 64,00, я получаю 64 вместо 64,00 в таблице данных.
Я попытался отформатировать значение ячейки Excel как текст, но не сработало.
Ниже приведен код, с которым я работаювкл.
public static DataTable GetDataTableFromCsv(string path, bool
isFirstRowHeader)
{
string header = isFirstRowHeader ? "Yes" : "No";
string pathOnly = System.IO.Path.GetDirectoryName(path);
string fileName = System.IO.Path.GetFileName(path);
string sql = @"SELECT * FROM [" + fileName + "]";
using (OleDbConnection connection = new OleDbConnection(
@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + pathOnly +
";Extended Properties=\"Text;HDR=" + header + "\""))
using (OleDbCommand command = new OleDbCommand(sql, connection))
using (OleDbDataAdapter adapter = new OleDbDataAdapter(command))
{
DataTable dataTable = new DataTable();
dataTable.Locale = CultureInfo.CurrentCulture;
adapter.Fill(dataTable);
return dataTable;
}
}