string.Substring 命令无效
string.Substring command not working
我有一个包含打印机列表的下拉列表,我想从 drowdownlist.SelectedItem.Text
中获取前三位数字,这背后的原因是我需要计算一个项目的旋转代码。
这是代码:
string[] plantname = Printerlist.SelectedItem.Text.Split('-');
string plantvalue = plantname[0].ToString();
if (plantvalue.Substring(0,3).ToLower() == "abk"){
rotation_plant = "9";
}
else if (plantvalue.Substring(0, 3).ToLower() == "cor")
{
rotation_plant = "3";
}
else if (plantvalue.Substring(0, 3).ToLower() == "iok")
{
rotation_plant = "0";
}
else if (plantvalue.Substring(0, 3).ToLower() == "moc")
{
rotation_plant = "6";
}
else if (plantvalue.Substring(0, 3).ToLower() == "tes")
{
rotation_plant = "1";
}
在调试中我看到了 plantvalue :
但上面的子字符串必须等于“tes”但是:
我做了重建,我关闭了应用程序并重新打开它,但它仍然无法正常工作,有没有人遇到过类似的问题,如果是的话,你是怎么过来的,请帮忙....
好吧,Substring 方法,在您的情况下,returns 一个新字符串,它将包含从索引 0 到 2 的图表。
在调试器中,您仍然检查 plantvalue 变量,而不是 Substring 方法的结果。
尝试将子字符串放入一个新变量中,即:
string lowerThreeLetters = plantvalue.Substring(0, 3).ToLower();
这样,通过将鼠标悬停在 lowerThreeLetters 变量上,您将能够在调试中看到 3 个首字母,而且,只会对子字符串进行一次计算,而不是每个 if 语句。
我有一个包含打印机列表的下拉列表,我想从 drowdownlist.SelectedItem.Text
中获取前三位数字,这背后的原因是我需要计算一个项目的旋转代码。
这是代码:
string[] plantname = Printerlist.SelectedItem.Text.Split('-');
string plantvalue = plantname[0].ToString();
if (plantvalue.Substring(0,3).ToLower() == "abk"){
rotation_plant = "9";
}
else if (plantvalue.Substring(0, 3).ToLower() == "cor")
{
rotation_plant = "3";
}
else if (plantvalue.Substring(0, 3).ToLower() == "iok")
{
rotation_plant = "0";
}
else if (plantvalue.Substring(0, 3).ToLower() == "moc")
{
rotation_plant = "6";
}
else if (plantvalue.Substring(0, 3).ToLower() == "tes")
{
rotation_plant = "1";
}
在调试中我看到了 plantvalue :
但上面的子字符串必须等于“tes”但是:
我做了重建,我关闭了应用程序并重新打开它,但它仍然无法正常工作,有没有人遇到过类似的问题,如果是的话,你是怎么过来的,请帮忙....
好吧,Substring 方法,在您的情况下,returns 一个新字符串,它将包含从索引 0 到 2 的图表。
在调试器中,您仍然检查 plantvalue 变量,而不是 Substring 方法的结果。 尝试将子字符串放入一个新变量中,即:
string lowerThreeLetters = plantvalue.Substring(0, 3).ToLower();
这样,通过将鼠标悬停在 lowerThreeLetters 变量上,您将能够在调试中看到 3 个首字母,而且,只会对子字符串进行一次计算,而不是每个 if 语句。