Solved

Add 1 zero in front of a number if 5 digits but if 6 digits stay as it is

Posted on 2016-08-31
4
38 Views
Last Modified: 2016-08-31
I want to add 1 zero in front of 5 digit numbers but no need to add if there are 6 digit numbers in  VB.net 2010.


Example:

12258 into 012258
400488 into 400488

Thank you for your help.
0
Comment
Question by:Queennie L
4 Comments
 
LVL 65

Expert Comment

by:Jim Horn
ID: 41778611
The SQL Server T-SQL answer would be...
SELECT RIGHT('00000' + CAST(your_number as varchar(10)), 6) 

Open in new window

This requires converting the number to a character data type, as numbers do not support leading zeros.
0
 
LVL 70

Accepted Solution

by:
Éric Moreau earned 500 total points
ID: 41778620
if you want to do it in VB, you can use PadLeft (https://msdn.microsoft.com/en-us/library/92h5dc07(v=vs.110).aspx?cs-save-lang=1&cs-lang=vb#code-snippet-2):
dim x as string = "12258"
x = x.PadLeft(6, "0")

Open in new window

0
 

Author Closing Comment

by:Queennie L
ID: 41778641
Thank you. It worked.
0
 
LVL 33

Expert Comment

by:it_saige
ID: 41778660
Expanding on what Eric has stated, another way, if you are dealing with numerics specifically, is to use the ToString method with a custom format specified; e.g. -
Module Module1
	Sub Main()
		Dim values = {1, 12, 123, 1234, 12345, 123456, 1234567, 12345678, 123456789}
		Console.WriteLine("Padding zeros -")
		For Each value In values
			Console.WriteLine(value.ToString(String.Format("D{0}", values.Max().ToString().Length())))
		Next
		Console.ReadLine()
	End Sub
End Module

Open in new window

Which produces the following output -Capture.JPGSo for your specific case you could simply use:
Dim value = 12258
Console.WriteLine(value.ToString("D6"))
'' Output will be
'' 012258

Open in new window


Proof of concept -
Module Module1
	Sub Main()
		Dim value = 12258
		Console.WriteLine(value.ToString("D6"))
		Console.ReadLine()
	End Sub
End Module

Open in new window

Output -Capture.JPG
-saige-
1

Featured Post

Backup Your Microsoft Windows Server®

Backup all your Microsoft Windows Server – on-premises, in remote locations, in private and hybrid clouds. Your entire Windows Server will be backed up in one easy step with patented, block-level disk imaging. We achieve RTOs (recovery time objectives) as low as 15 seconds.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Calculating holidays and working days is a function that is often needed yet it is not one found within the Framework. This article presents one approach to building a working-day calculator for use in .NET.
It was really hard time for me to get the understanding of Delegates in C#. I went through many websites and articles but I found them very clumsy. After going through those sites, I noted down the points in a easy way so here I am sharing that unde…
This Micro Tutorial will give you a basic overview how to record your screen with Microsoft Expression Encoder. This program is still free and open for the public to download. This will be demonstrated using Microsoft Expression Encoder 4.
Email security requires an ever evolving service that stays up to date with counter-evolving threats. The Email Laundry perform Research and Development to ensure their email security service evolves faster than cyber criminals. We apply our Threat…

786 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question