我有一个vb net程序来获取图像中的二进制值。这种语法产生
111110
textbox3.text上的。我想在textbox3.text上没有空格
1 1 1 1 1 0
Dim x, y As Integer
Dim gambar As New Bitmap(PictureBox7.Image)
Dim gray, vektor, biner As Integer
'biner
'With gambar
For x = 0 To gambar.Width - 1
For y = 0 To gambar.Height - 1
gray = (CInt(gambar.GetPixel(x, y).R) + _
gambar.GetPixel(x, y).G + _
gambar.GetPixel(x, y).B) / 3
gambar.SetPixel(x, y, Color.FromArgb(gray, gray, gray))
If gray > 128 Then
biner = 255
Else
biner = 0
End If
gambar.SetPixel(x, y, Color.FromArgb(biner, biner, biner))
'ttup proses grayscale
If (biner = 0) Then
vektor = 0
End If
If (biner = 255) Then
vektor = 1
End If
'TextBox2.Text = pixel_putihblkg2
TextBox3.SelectedText = vektor.ToString
Next y
PictureBox7.Refresh()
PictureBox7.Image = gambar
Next x
PictureBox7.SizeMode = PictureBoxSizeMode.StretchImage
Catch exc As Exception
End Try
答案 0 :(得分:1)
您的请求不清楚,但如果我正确解释您的示例,您希望在将其分配给TextBox之前在字符串中的每个数字之间插入一个空格。您可以使用修改后的循环String.Insert执行此操作。
Dim spacedString As String = vektor.ToString
For i As Integer = 0 To (spacedString.Length * 2) Step 2
spacedString = spacedString.Insert(i + 1, " ")
Next
TextBox3.Text = spacedString
这里我将vektor.ToString
复制到一个新变量中,然后对其进行修改。 For
循环从0增加到未修改字符串长度的两倍(因为最终字符串将是两倍长),并逐步增加(在每个字符加空格后插入,或两个位置)。对于每次迭代,使用.Insert
插入空格。最后,将修改后的字符串分配给TextBox。
这将在字符串的末尾产生额外的空间。如果这是一个问题,您可以使用String.TrimEnd将其删除。
TextBox3.Text = spacedString.TrimEnd(" "c)
更新:我没注意到您似乎一次向TextBox插入一位数字。在这种情况下,您可以直接在代码中添加空格。
TextBox3.Text &= vektor.ToString & " "