如何将用户在文本框中输入的数据流式传输到int
数组?让我们说,我有一个带有2个文本框,按钮和缓冲区的窗口,在界面中看不到。
我希望点击textbox1
后,CAT
的数据(例如int buffer[255]
)会保存到button1
。然后,点击button2
,' CAT
'应显示在textbox2
中,并从buffer
中删除
应该是这样的:
int buffer[255]={0};
//user entered 'CAT' in textbox1
//clicking button1
//now:
buffer[0]=[67]; //67 = 'C' in ASCII
buffer[1]=[65];
buffer[2]=[84];
//clicking button2
//in read-only textbox2 'CAT' appears
//now:
buffer[]={0};
我想在textbox2(for loop
和System.Convert.ToChar(buffer[i])
)中显示单词时需要进行一些转换,但最让我困惑的是如何将文本从textbox1
保存到{{1 }}。
好的,对于回复,现在我需要让我的按钮工作,但不知道为什么,我现在已经有了这个方法:
buffer
将public int saveToBuffer(string text)
{
string txt = text;
int[] receivedBuffer = new int[255];
int count = 0;
//int i = 0;
foreach(char c in txt)
{
receivedBuffer[count] = c;
count++;
}
return receivedBuffer[255];
}
中的文字返回到数组textbox1
。我也有了这个按钮:
receivedBuffer
而且我不知道该怎么把beetwen private void saveToBufferButton_Click(object sender, EventArgs e)
{
}
用来使其发挥作用。
答案 0 :(得分:1)
感谢我在这个示例中没有使用静态定义的缓冲区,希望这有助于您获得所需的解决方案:
int[] buffer = "CAT".Select(Convert.ToInt32).ToArray();
string result = new string(buffer.Select(Convert.ToChar).ToArray());
替换" CAT"在上面的示例中使用textbox1.Text。
答案 1 :(得分:0)
Rob Epsteing的极好回应,只是为了添加一个没有LINQ的不同方法,可以很好地了解Rob Epstein在2个陈述中基本上展示的内容。
string text = "CAT";
int[] buffer = new int[text.Length];
int count = 0;
//add to buffer
foreach(char c in text)
{
buffer[count] = c;
count++;
}
//from buffer to text
StringBuilder builder = new StringBuilder();
foreach(char c in buffer)
{
builder.Append(c);
}
text = builder.ToString();
答案 2 :(得分:0)
从字符串中检索ASCII代码的简单方法是:
string value = textbox1.Text;
// Convert the string into a byte[].
byte[] asciiBytes = Encoding.ASCII.GetBytes(value);