听起来像是你要使用的indexer on String
来提取单个char
:
string text = "*110101"; // Wherever you get this from...
label4.Text = text[1] == '1' ? "ON" : "OFF";
label5.Text = text[2] == '1' ? "ON" : "OFF";
label6.Text = text[3] == '1' ? "ON" : "OFF";
label7.Text = text[4] == '1' ? "ON" : "OFF";
label8.Text = text[5] == '1' ? "ON" : "OFF";
label9.Text = text[6] == '1' ? "ON" : "OFF";
这是假设你是幸福的标签文本设置为“OFF”比“1之外的任何值”。 (正如在评论中指出,使用双引号的字符串文字,但单引号字符文字)
注意我是如何使用的条件运算符这里简化代码:如果你想基本上根据条件选择两个值(“ON”和“OFF”),条件运算符比if
/else
简单得多。当然,不要过头,但值得熟悉。
但是,我也建议你可能想把相关的标签放入一个集合中。那么你可以使用类似的东西:
for (int i = 0; i < 6; i++)
{
toggles[i].Text = text[i + 1] == '1' ? "ON" : "OFF";
}
使用string.substring(startpos,length)来获取子字符串并相应地执行操作。 – 2012-03-24 09:04:22
你是什么意思索引? 'string a =“10”; char one = a [0]; char two = a [1];'很难理解你的问题,它也包含第1行的语法错误。 – Gleno 2012-03-24 09:05:44
char [] chArray = yourstring.ToCharArray();将只返回你的字符串作为字符arrray来使用.. – Flowerking 2012-03-24 09:07:11