VB.NET中如何移除字符串中的所有空格字符?

2026-05-08 11:523阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计384个文字,预计阅读时间需要2分钟。

VB.NET中如何移除字符串中的所有空格字符?

我直接从字符串中提取图像,并删除所有零字符。我的字符串由以下十六进制字节组成:00 44 00 65 00 6C 00 70 00 68 00 69。对于每个字符,前面都有一个零字节(空字节)。我猜测我必须使用某种Uni来处理这些。

我一直试图从我的字符串中删除所有零字符

我的字符串是由这些十六进制字节组成的

00 44 00 65 00 6C 00 70 00 68 00 69

VB.NET中如何移除字符串中的所有空格字符?

对于每个字母,前面都有一个零字节(空字节).我猜测我必须使用某种Unicode编码或宽编码才能获得没有那些零的文本.

但我无法理解,所以我认为最好的方法是使用替换,但即使失败.

Dim packet() As String = {&H0, &H44, &H0, &H65, &H0, &H6C, &H0, &H70, &H0, &H68, &H0, &H69} Dim str As String = Encoding.ASCII.GetString(packet, 0, 12) str = str.Replace("\0", "") 'Compiles and fails str = str.Replace(\0, "") 'No compile str = str.Replace('\0', "") 'No compile 真正的问题不是空字节,而是你如何首先解码字符串字符串.您使用的是错误的编码.您应该使用 Encoding.BigEndianUnicode而不是Encoding.ASCII,然后您不需要手动替换空值,因为解码过程将为您处理它们:

Dim packet() As Byte = {&H0, &H44, &H0, &H65, &H0, &H6C, &H0, &H70, &H0, &H68, &H0, &H69} Dim str As String = Encoding.BigEndianUnicode.GetString(packet)

本文共计384个文字,预计阅读时间需要2分钟。

VB.NET中如何移除字符串中的所有空格字符?

我直接从字符串中提取图像,并删除所有零字符。我的字符串由以下十六进制字节组成:00 44 00 65 00 6C 00 70 00 68 00 69。对于每个字符,前面都有一个零字节(空字节)。我猜测我必须使用某种Uni来处理这些。

我一直试图从我的字符串中删除所有零字符

我的字符串是由这些十六进制字节组成的

00 44 00 65 00 6C 00 70 00 68 00 69

VB.NET中如何移除字符串中的所有空格字符?

对于每个字母,前面都有一个零字节(空字节).我猜测我必须使用某种Unicode编码或宽编码才能获得没有那些零的文本.

但我无法理解,所以我认为最好的方法是使用替换,但即使失败.

Dim packet() As String = {&H0, &H44, &H0, &H65, &H0, &H6C, &H0, &H70, &H0, &H68, &H0, &H69} Dim str As String = Encoding.ASCII.GetString(packet, 0, 12) str = str.Replace("\0", "") 'Compiles and fails str = str.Replace(\0, "") 'No compile str = str.Replace('\0', "") 'No compile 真正的问题不是空字节,而是你如何首先解码字符串字符串.您使用的是错误的编码.您应该使用 Encoding.BigEndianUnicode而不是Encoding.ASCII,然后您不需要手动替换空值,因为解码过程将为您处理它们:

Dim packet() As Byte = {&H0, &H44, &H0, &H65, &H0, &H6C, &H0, &H70, &H0, &H68, &H0, &H69} Dim str As String = Encoding.BigEndianUnicode.GetString(packet)