Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Semrush - keyword research tool

Create your online store today with Shopify

Turn ChatGPT, Claude, Gemini, And CoPilot Into Your Personal Assistant, Business Coach, Content Creator, And More

AFFILIATE MARKETING Your all-in-one performance engine Manage affiliates, creators, and customer referrals in one unified platform—turning every partnership into measurable growth

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Disclosure: My content contains affiliate links.

43,230 questions

56,132 answers

573 users

How to remove trailing nulls (0) from byte array in VB.NET

2 Answers

0 votes
Imports System

Public Class Program
	Public Shared Sub Main()
        Dim byteArray As Byte() = {1, 2, 3, 0, 0, 0, 0}
        
		Dim lastNonNullIndex As Integer = Array.FindLastIndex(byteArray, Function(b) b <> 0)
        Dim trimmedArray As Byte() = New Byte(lastNonNullIndex + 1 - 1) {}
			
        Array.Copy(byteArray, trimmedArray, trimmedArray.Length)

        For Each b In trimmedArray
            Console.Write(b & " ")
        Next
    End Sub
End Class
  

  
' run:
'
' 1 2 3 
'
 

 



answered Mar 12, 2025 by avibootz
0 votes
Imports System

Public Class Program
    Public Shared Sub Main()
        Dim byteArray As Byte() = {1, 2, 3, 0, 0, 0, 0}
        Dim trimmedArray As Byte() = RemoveTrailingNulls(byteArray)
		
        Console.WriteLine(String.Join(", ", trimmedArray))
    End Sub

    Public Shared Function RemoveTrailingNulls(ByVal byteArray As Byte()) As Byte()
        If byteArray Is Nothing OrElse byteArray.Length = 0 Then Return byteArray
        Dim newLength As Integer = byteArray.Length

        While newLength > 0 AndAlso byteArray(newLength - 1) = 0
            newLength -= 1
        End While

        Dim trimmedArray As Byte() = New Byte(newLength - 1) {}
        Array.Copy(byteArray, trimmedArray, newLength)
			
        Return trimmedArray
    End Function
End Class

  
  
' run:
'
' 1, 2, 3
'

 



answered Mar 12, 2025 by avibootz

Related questions

1 answer 174 views
1 answer 204 views
1 answer 158 views
2 answers 193 views
1 answer 145 views
1 answer 214 views
1 answer 138 views
...