c# - “无法从字符串转换为双精度”
问题描述
请有人可以帮我解决以下问题。在最后一行中,我收到一条错误消息,指出我
无法从字符串转换为双精度
它在前两行中有效。帮助将不胜感激。
DeltaY.Text = (Convert.ToDecimal(YCrd2.Text) - Convert.ToDecimal(YCrd1.Text)).ToString();
DeltaX.Text = (Convert.ToDecimal(XCrd2.Text) - Convert.ToDecimal(XCrd1.Text)).ToString();
Obs1Angle.Text = Math.Tan((Convert.ToDecimal(DeltaY.Text)) /
(Convert.ToDecimal(DeltaX.Text))).ToString();
解决方案
你应该TryParse
用来防止你的字符串不是数字。
decimal DeltaYVal, DeltaXVal;
if (decimal.TryParse(DeltaY.Text, out DeltaYVal) && decimal.TryParse(DeltaY.Text, out DeltaXVal))
{
Obs1Angle.Text = Math.Tan(DeltaYVal / DeltaXVal).ToString();
}
推荐阅读
- javascript - 为什么 CSS' 在 mozilla firefox 和 Internet Explorer 中无法正常工作?
- node.js - 如何在 mongoDB 中对文档进行排序?
- c# - 在 Web 程序集中使用 Selenium 从 C# 的下拉菜单中选择项目 - 不起作用
- android - IBM 语音转文本 - 如何将 MP3 音频文件转换为字节数组
- c++ - 使用 SFINAE 启用基于包大小的部分专业化
- c# - 模拟工作簿->工作表时:从范围“”引用的“Microsoft.Office.Interop.Excel.Workbook”类型的变量“p”,但未定义
- wpf - 其他项目功能中的项目长度
- amazon-web-services - 责任更大的单个 AWS lambda 与责任更少的多个 lambda
- android - Flutter:Android Studio 中的内联测试覆盖率
- xml - 如何为肥皂请求转义 xml 肥皂正文中的特殊字符?