Chciałbym dodać 0 przed liczbą, jeśli jest to jedna cyfra. Na przykład należy 01,02,03 ... 09, 10, 11, ...Jak mogę uzyskać 0 przed dowolnym numerem?
Odpowiedz
Dim yourNumber as Int32 = 5
yourNumber.ToString("D2") '= "05"
if(number < 10){
number = Int32.Parse("0" + number.ToString());
}
myślę, że był jakiś C# dzieje :) ale powinien dostać ten pomysł.
Spróbuj tego:
myNum.ToString().PadLeft(2, "0");
Musisz ustawić szerokość jako 2 na prefiks z zero –
Co oznacza "0-42"? –
Dobry połów Iain – jvenema
Spróbuj następujących ...
Dim varNumber As Integer = 3
Dim number As String = String.Format("{0:0#}", varNumber)
nadzieję, że pomoże.
Stara metoda szkoły z VB6, nadal działa:
Dim yourNumber as Long = 5
Format(yourNumber, "00") ' = "05" '
... tylko przez wzgląd na stare czasy :). Lepiej używać Tim's answer.
+1 Z dokumentów dotyczących specyfikatora D "Ten format jest obsługiwany tylko dla typów integralnych. Liczba jest konwertowana na ciąg cyfr dziesiętnych (0-9), poprzedzony znakiem minus, jeśli liczba jest ujemna. wskazuje minimalną liczbę cyfr w wynikowym łańcuchu.W razie potrzeby liczba jest uzupełniana zerami po lewej stronie, aby uzyskać liczbę cyfr podaną przez specyfikator precyzji. " http://msdn.microsoft.com/en-us/library/aa720653(v=VS.71).aspx – MarkJ
daje mi InvalidCastException do IFormatProvider:/ –
Jakiego kodu używasz? Powyższe powinno działać: http://ideone.com/wza8KE –