将 Excel 互操作的 Range.Value2 转换为字符串
Casting Range.Value2 of Excel interop to string
我从 C# 应用程序的 Excel 工作表中导入了一些值。一列基本上是文本,但可以包含任何值。我使用了以下内容:
Range range = ... // getting this from Excel, works fine
string myString = (string)range.Value2;
当单元格包含文本时,这是可行的。但是当它包含例如 123 时,调试器会为 range.Value2 显示 123.0 并且转换为字符串失败并出现异常。
我想知道,如何为各种单元格编写最通用的转换。至少是string和integer,可以是float内容
我找到了可能不太好但有效的解决方案:
myString = range.Value2 == null ? "" : range.Value2.ToString();
可能存在更好的东西。
我从 C# 应用程序的 Excel 工作表中导入了一些值。一列基本上是文本,但可以包含任何值。我使用了以下内容:
Range range = ... // getting this from Excel, works fine
string myString = (string)range.Value2;
当单元格包含文本时,这是可行的。但是当它包含例如 123 时,调试器会为 range.Value2 显示 123.0 并且转换为字符串失败并出现异常。
我想知道,如何为各种单元格编写最通用的转换。至少是string和integer,可以是float内容
我找到了可能不太好但有效的解决方案:
myString = range.Value2 == null ? "" : range.Value2.ToString();
可能存在更好的东西。