string - 如何处理异常 C#?
问题描述
我正在尝试将字符串转换为 NULL,以便它可以由 MySQL 处理。但是,我得到“无法将字符串转换为双精度”。我想抛出一个异常,这样我就可以处理输入的任何字符串,可以这样做吗?
try
{
Double dDate = Convert.ToDouble(cellData);
DateTime dt = DateTime.FromOADate(dDate);
cellString = dt.ToString("yyyy-MM-dd");
if (cellString.Length == 0)
cellString = "NULL";
else
cellString = "'" + MySqlHelper.EscapeString(cellString) + "'";
// throw new EncoderFallbackException("Testing 123");
}
catch (InvalidCastException)
{
cellString = "NULL";
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
oWorkbook.Close();
m_iSystemOk = false;
return bResult;
}
更新在对答案的OP评论之后
这是如何cellData
定义的:
var cellData = oWorksheet.Cells[row, col].Value2;
string cellString = "";
if (cellData != null)
{
if (col == 6 || col == 9 || col == 10)
{
try (code continues as above statement)
解决方案
我有错误的例外。更改为 catch (FormatException) 及其工作
推荐阅读
- angular - Ng2-charts 条形图
- python - 如何在可以自动重新缩放的散景中添加标签/文本?
- arrays - Java 8 Streams - 从对象列表中获取不同的整数作为数组
- python - Python - 基于列表的并行动态处理
- c# - 如何将 Ajax 与 MVC、MySQL 和实体框架一起使用,没有剃须刀页面
- c - 错误:从较小的整数类型“int”转换为“字符串”(又名“char *”)[-Werror,-Wint-to-pointer-cast]
- macos - 为 Mac(例如 Mono)构建现有 VS2019 .NET 5.0 Windows 窗体应用程序的最快和最简单的方法?
- sql - 在子查询中使用选择值
- python - 基于降雨的作物保险赔付计算
- c++ - 在 SDL2 中垂直翻转曲面