首页 > 解决方案 > C# 无法将文本解析为整数?

问题描述

好的,所以我正在尝试制作 ac# 聊天程序,您可以与机器人聊天(它应该是一个虚拟助手程序。)。我正在做一个计算器,但它不会工作。这是我的代码:

reply(text.Split(' ')[1]);
int i = int.Parse(text.Split(' ')[1]);
reply(i.ToString());

回复是无效的,我使用列表框进行聊天,回复将文本添加到列表框,如“Bot:-string-”。因此,reply("a") 会将 "Bot: a" 添加到列表框中。好的,所以这不起作用,当我写计算 5+5 时。而且我确信 text.Split(' ')[1] 是 5+5。

我试过这样的事情:

int i = 5+5;

它奏效了,我不明白为什么它不能与我的代码一起使用。我还没有看到一个计算器让这变得简单,我不知道这是否可以做到这一点。谢谢你的帮助!

标签: c#

解决方案


它不起作用,int parse 只识别数字而不识别符号。您可能想找出一种更好的方法来做到这一点。

但是,您可以使用以下表达式:

using System.Data;
DataTable dt = new DataTable();
var v = dt.Compute("3 * (2+4)","");

这是一个例子。当然,希望它对您有用,您只需为您的字符串或变量更改字符串 **3 * (2+4) **。


推荐阅读