2

我是 C# 新手,除了使用循环之外,似乎找不到将文本字符串从文本框复制到字节数组中特定起点的方法。

我知道我可以:

  var myBuffer = new byte[20];
  myBuffer = ASCIIEncoding.ASCII.GetBytes(textBox.Text);

但是我如何在数组内的偏移处开始文本,例如在第四个字节:

 starting at myBuffer[3], copy textBox.Text;   // Representation of what I need

有没有优雅的解决方案?

4

2 回答 2

3

是的,有一个优雅的解决方案:使用方法的五参数重载GetBytes

ASCIIEncoding.ASCII.GetBytes(textBox.Text, 0, 17, myBuffer, 3);

前三个参数提供字符串、开始编码的字符串的偏移量以及要编码的字符数。最后两个参数提供目标数组,以及开始写入的偏移量。

于 2013-09-03T02:35:03.840 回答
0

像这样使用子字符串

var myBuffer = new byte[20];
myBuffer = ASCIIEncoding.ASCII.GetBytes(textBox.Text.Substring(3));
于 2013-09-03T02:32:52.317 回答