2016-04-30 7 views
1

My richtextbox не показывает полную длину строки (и я не знаю почему!). У меня есть richtextbox, в котором я показываю массив байтов и кодировку ascii этих байтов;Richtextbox не показывает всю строку vb.net

Dim rt1 As String 
    Dim rt2 As String 

    Dim num1 As Integer = filedata.headerBytes.GetLength(0) - 1 - 4 
    For i = 0 To num1 Step 4 
     Dim temp1 As String = "" 
     Dim temp2 As String = "" 
     Dim b1(3) As Byte 
     Dim b2(3) As Byte 
     For j = 0 To 3 
      b1(j) = filedata.headerBytes(i + j) 
      b2(j) = filedata.rawInput(i + j) 
      temp1 = temp1 & filedata.headerBytes(i + j) & " " 
      temp2 = temp2 & filedata.rawInput(i + j) & " " 
     Next 
     rt1 = rt1 & (temp1 & " " & System.Text.Encoding.ASCII.GetString(b1.ToArray) & Chr(13)) 
     rt2 = rt2 & (temp2 & " " & System.Text.Encoding.ASCII.GetString(b2.ToArray) & Chr(13)) 
    Next 
    RichTextBox1.Text = rt1 
    RichTextBox2.Text = rt2 

Я попытался изменить RT1 и RT2 для струнных строителей (и изменить код, чтобы принять это во внимание), но у меня такая же проблема. Вот образец строки, которая создается;

"82 73 70 70  RIFF" & vbCr & "178 141 49 0  ??1 " & vbCr & "87 65 86 69  WAVE" & vbCr & "102 109 116 32  fmt " & vbCr &... 

И вот здесь показывает richtextbox;

"82 73 70 70  RIFF" & vbLf & "178 141 49 0  ??1" 

Я никогда не сталкивался с такими проблемами в переданных, каких-либо идеях?

+1

Это происходит потому, что ваш вход содержит байт со значением 0. Этот байт добавляется к вашей строке, но байт со значением 0 считается концом строки в richtextbox. – Steve

+0

@Steve Это была проблема, спасибо! Положите это в ответ, чтобы я мог отметить это, пожалуйста, ответьте! :) – FraserOfSmeg

ответ

1

Это происходит потому, что ваш вход содержит байт со значением 0.
Этот байт добавляется к вашим массивам, а затем преобразуется в строку. Но байт со значением 0 рассматривается как конец строки RichTextbox.

Единственное возможное обходное решение, которое я могу себе представить, это проверить нулевое значение и преобразовать его в то, что вы можете отобразить.

Смежные вопросы