2012-04-01 18 views
0

基本的には、テキストボックスのテキストをUTF-8からbase16に変換する必要があります(これは16進数であると思います)。C#で基本ストリームからテキストボックスにファイルを書き込む

これが、バックの言葉:

//Setup byte reader. 
      FileStream fs = new FileStream(EditOpen.FileName, FileMode.Open); 
      BinaryReader br = new BinaryReader(fs); 
      long length = fs.Length; 
      //Read bytes to textBox1. 
      br.BaseStream.Position = 0x00001844; //Min loading address. 
      byte[] PT = br.ReadBytes(0x00000428); //Amount of bytes to load (1064 to be exact). 

      //Print string PT to textBox1 after converting to UTF-8 and replace 0's with DOT's. 
      textBox1.Text = System.Text.Encoding.UTF8.GetString(PT).Replace("\0", "."); 
      fs.Close(); 

答えて

0

最も簡単な方法は、ベース・アドレスを可能に正しいencoding

using(StreamWriter sw = 
      new System.IO.StreamWriter(fs, 
       System.Text.UTF8Encoding)) 
    { 
    sw.Write(textBox1.Text); 
    } 
+0

意志で作成したStreamWriterを使用することですか? –

+0

私は基礎となるストリームの位置の変更もStreamWriterに影響すると考えています。私は現時点ではテストすることができませんが、試してみるべきです。 –

関連する問題