gpt4 book ai didi

c# - 代码在相等比较时返回 false?

转载 作者:太空宇宙 更新时间:2023-11-03 10:48:24 25 4
gpt4 key购买 nike

我目前遇到的问题:

我的服务器将数据返回给客户端,其中包括一个名称。现在我想让客户端抓取这个名字并进行比较。然而,在过去的 3 个小时里,我一直被这个问题困住,我不想廉价地解决它。

我的服务器返回一个值,然后返回一个名称,例如:random23454@NAMEHERE

我使用以下方法拆分值:

string[] values = returndata.Split('@');

然后我在做:

if (textBox3.Text == values[1]) {
MessageBox.Show("equal");
}

但是,这里的问题是。我无法让它相等,我尝试了其他方法,但它就是不显示相等。

我做了什么:

将 textBox3.Text 打印到一个文本框并将值 [1] 打印到另一个文本框并与我的眼睛和鼠标进行比较(由于线程使用调用)。

使用了 .Trim() 函数在 values[1] 上使用 .ToString() (只是为了它的 hell )将它们分配给一个完整的新字符串,修剪它们并比较它们

使用以下方法将比较拖到线程外:

this.Invoke((MethodInvoker)delegate()
{
outside(name);
});

并执行相同的检查。

我的代码:

 string returndata = System.Text.Encoding.ASCII.GetString(inStream);
readData = "" + returndata;
if (readData.Contains("@") && readData.Contains("random"))
{


string[] values = returndata.Split('@');
string name = values[1].Trim();

if (textBox3.Text == name)
{
MessageBox.Show("true");
}
else
{
MessageBox.Show("false");
this.Invoke((MethodInvoker)delegate()
{
outside(name);
});

}

我还能做什么?我只是不明白它不等于..

提前致谢。

最佳答案

您从服务器返回的数据可能是一个字节数组。在拆分之前,先尝试将响应转换为 string。还可以尝试将响应(或响应的类型)打印到控制台以查看在进一步操作之前得到的结果。

还要确保每个字符串的长度 是相同的。也许试试 utf-8 而不是 ASCII?像这样:

System.Text.Encoding.UTF8.GetString(inStream);

关于c# - 代码在相等比较时返回 false?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22534450/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com