は本当に私は、ファイル内の文字列を持っBinaryWriterを使用しているときに文字列が右に移動するのはなぜですか?
...これでいくつかの助けを必要とする:私はC#
private void s_PlayerSStation_Click(object sender, EventArgs e)
{
BinaryWriter m_bw = new BinaryWriter(File.OpenWrite(ofd.FileName));
if (textBox3.Text == "")
{
m_bw.Close();
MessageBox.Show("Please enter a number before pressing the button", "Save Station Error");
return;
}
int x = Convert.ToInt32(textBox3.Text);
if (x > 999)
{
m_bw.Close();
MessageBox.Show("Value exceeds max");
return;
}
if (textBox3.Text.Length < 3)
{
if (textBox3.Text.Length < 2)
{
string p = String.Format("00{0}", textBox3.Text);
m_bw.BaseStream.Position = 0x00000004;
m_bw.Write(p);
m_bw.BaseStream.Position = 0x000038BC;
m_bw.Write(p);
label4.Text = String.Format("You will now spawn a save station: {0}", textBox3.Text);
m_bw.Close();
return;
}
string z = String.Format("0{0}", textBox3.Text);
m_bw.BaseStream.Position = 0x00000004;
m_bw.Write(z);
m_bw.BaseStream.Position = 0x000038BC;
m_bw.Write(z);
label4.Text = String.Format("You will now spawn a save station: {0}", textBox3.Text);
m_bw.Close();
return;
}
m_bw.BaseStream.Position = 0x00000004;
m_bw.Write(textBox3.Text);
m_bw.BaseStream.Position = 0x000038BC;
m_bw.Write(textBox3.Text);
label4.Text = String.Format("You will now spawn a save station: {0}", textBox3.Text);
m_bw.Close();
}
これをで書いた53 61 76 65 53 74 61 74 69 6F 6E 5F 30 30 31
:六角であるSaveStation_001
これは、ユーザーがtextBox3に入力した値に001を変更するだけなので、66に入力すると、SaveStation_001
をSaveStation_066
に変更する必要がありますが、何らかの理由で右に1を移動すると、SaveStation_ 066
(16進数:53 61 76 65 53 74 61 74 69 6F 6E 5F |03| 30 36 36
)のようになります。誰が問題が何であるか知っていますか?また、idkは新しいヘックスで03
を取得します(|とマークされています)
コードを正しくインデントするには、コードをハイライト表示し、ツールバーの '{}'ボタンを押します。私たちはここにコード化するためにペーストビンのリンクを受け入れません。 –
うん。私はそれを押しましたが、それはそれをしないし、私にエラーを与え、本当に遅いので、私はそれを手でインデントする時間がありません。 – Gecko64
あなたが私たちにあなたの時間を与えることを期待しているので、失礼ではありません。それ以外の場合は、そうしないことにします。 –