BinaryWriter从TextBox写入字节

时间:2014-09-08 19:29:48

标签: c# binarywriter

我一直在尝试制作一个测试程序,它将文本框中的一个字节写入另一个文本框中的偏移量。

我一直在尝试这样做:

using (BinaryWriter bw = new BinaryWriter(File.OpenWrite(ofd.FileName)))
{
     bw.Seek(toolStripTextBox1.Text, SeekOrigin.Begin);
     bw.Write((byte)textBox1.Text);
}    

toolStripTextBox1包含我想写的偏移量,textBox1包含我想写的字节。

假设我输入了toolStripTextBox1 "0xF450B0"textBox1 "1052",我希望它将"0xF450B0"的位置写入此处:{{ 3}}

1 个答案:

答案 0 :(得分:1)

如果总是用户输入的内容,您可以将偏移量(十六进制)转换为整数。看起来像是:

using (BinaryWriter bw = new BinaryWriter(File.OpenWrite(ofd.FileName)))
{
     bw.Seek(Convert.ToInt32(toolStripTextBox1.Text, 16), SeekOrigin.Begin);
     bw.Write((byte)textBox1.Text);
}

只是强调 - 如果用户输入非{十二进制的东西,你会得到一个例外。如果这是您需要处理的方案,则可以使用toolStripTextBox1。有关十六进制和整数之间转换的更多信息,请参阅this site

祝你好运!