string strI;   

for (int i = 1; i < 100; i++)
    strI = i.ToString();

aquí, si i = 1 luego ToString rendimientos "1"

Pero quiero conseguir "01" o "001"

Se ve muy fácil, pero sólo hay artículo sobre

datetime.ToString("yyyy-MM-dd")`
  • Es el mejor post de código que se compila y ejecuta, tostirng no está bien. También, para los programadores, 0x sugiere que se está refiriendo a base hexadecimal. Está buscando «ceros».
  • lo siento, mi idioma nativo no es el inglés y mi nivel de inglés es realmente malo. y voy a la escuela de inglés de todos los días para mejorar mi inglés. Podría usted por favor me entiende. y he editado el tostirng
  • Que bien. Sólo un toque. De todos modos, int.ToString puede tomar un formato, como DateTime.ToString.
InformationsquelleAutor Sungguk Lim | 2010-06-01

6 Comentarios

  1. 11

    Aceptado la respuesta es rápida y buena:

    i.ToString("00")

    o

    i.ToString("000")

    Si usted necesita un poco más de complejidad, De la cadena.Formato vale la pena intentarlo:

    var str1 = "";
    var str2 = "";
    for (int i = 1; i < 100; i++)
    {
        str1 = String.Format("{0:00}", i);
        str2 = String.Format("{0:000}", i);
    }

    Para la i = 10 caso:

    str1: "10"

    str2: "010"

    Yo uso este, por ejemplo, para borrar el texto en particular, los Controles de Etiqueta en mi formulario por su nombre:

    private void EmptyLabelArray()
    {
        var fmt = "Label_Row{0:00}_Col{0:00}";
        for (var rowIndex = 0; rowIndex < 100; rowIndex++)
        {
            for (var colIndex = 0; colIndex < 100; colIndex++)
            {
                var lblName = String.Format(fmt, rowIndex, colIndex);
                foreach (var ctrl in this.Controls)
                {
                    var lbl = ctrl as Label;
                    if ((lbl != null) && (lbl.Name == lblName))
                    {
                        lbl.Text = null;
                    }
                }
            }
        }
    }
    • Gracias funcionó para mí 🙂
  2. 5

    Este blog es un pequeño gran truco de la hoja para mantener útil cuando se trata de cadenas de formato a una variedad de formatos.

    link troyano eliminado

    Editar

    El enlace fue eliminado por Google temporalmente advirtió de que el sitio (o relacionados con el sitio) puede haber sido la difusión de software malicioso. Ahora está fuera de la lista y no es reportado como problemática. Google «SteveX Cadena de Formato» encontrará el resultado de la búsqueda y se puede visitar a su discreción.

    • Que sitio (ahora) desencadena un troyano de advertencia.
  3. 4

    No puedo creer que nadie ha sugerido este:

    int i = 9;
    i.ToString("D2"); //Will give you the string "09"

    o

    i.ToString("D8"); //Will give you the string "00000009"

    Si quieres hexadecimal:

    byte b = 255;
    b.ToString("X2"); //Will give you the string "FF"

    Usted puede incluso utilizar sólo «C» para mostrar como moneda de cambio si la configuración regional símbolo de moneda. Ver aquí:
    https://docs.microsoft.com/en-us/dotnet/api/system.int32.tostring?view=netframework-4.7.2#System_Int32_ToString_System_String_

  4. 0

    También puede hacerlo de esta manera

    private static string GetPaddingSequence(int padding)
    {
          StringBuilder SB = new StringBuilder();
          for (int i = 0; i < padding; i++)
          {
               SB.Append("0");
          }
    
          return SB.ToString();
      }
    
    public static string FormatNumber(int number, int padding)
    {
        return number.ToString(GetPaddingSequence(padding));
    }

    Finalmente llamar a la función FormatNumber

    string x = FormatNumber(1,2);

    De salida será 01, la cual se basa en el relleno de parámetro. El aumento va a aumentar el número de 0s

Dejar respuesta

Please enter your comment!
Please enter your name here