Converti numero intero numero a tre cifre

Ho una variabile di tipo integer .se la sua 1-9 si visualizza solo come “1” o “9”, sto cercando di convertire la variabile per salvare 3 cifre, vale a dire. “001”, o “009”, etc. tutte le idee?
Sto usando C#,ASP.Net

  • Che cosa stai cercando di convertire?
  • In che linguaggio stai usando?
  • io uso c# con asp.net
  • Si consiglia di utilizzare la Stringa’ di memorizzare qualcosa come ‘001’
InformationsquelleAutor user1270940 | 2012-05-31



5 Replies
  1. 23

    utilizzare

    int X = 9;
    
    string PaddedResult = X.ToString().PadLeft (3, '0'); //results in 009

    vedi MSDN riferimenti qui e qui.

    • Io preferisco la leggibilità della stringa di formato, ma se stai facendo un sacco, ho il sospetto che questo sarà più veloce giusto?
    • potrebbe essere più veloce, ma mi piace perché la lunghezza della stringa può essere una variabile (primo parametro nella chiamata al Pad…) che a sua volta rende piuttosto facile da configurare…
    • Scusate volevo dire che questa soluzione sarebbe più veloce – non tutti i funky ricerche FormatProviders che va sotto Format().
    • Scommetto che è più veloce, ma non ho profilo…
  2. 2

    Da: https://docs.microsoft.com/en-us/dotnet/standard/base-types/standard-numeric-format-strings#DFormatString

    “D” (o decimale) identificatore di formato di convertire un numero in una stringa di cifre decimali (0-9), preceduto da un segno meno se il numero è negativo.

    L’identificatore di precisione indica il numero minimo di cifre desiderato nella stringa risultante. Se necessario, il numero è riempita con zeri a sinistra per produrre il numero di cifre date dall’identificatore di precisione.

    Come:

    int value; 
    
    value = 12345;
    Console.WriteLine(value.ToString("D"));
    //Displays 12345
    Console.WriteLine(value.ToString("D8"));
    //Displays 00012345
    
    value = -12345;
    Console.WriteLine(value.ToString("D"));
    //Displays -12345
    Console.WriteLine(value.ToString("D8"));
    //Displays -00012345

Lascia un commento