CSharp - Incrementar String como si fuera numerico

Written by lopezatienza on 29 Octubre 2008 – 16:46 -



Esta función te devuelve null si hay algún fallo, por ejemplo que se le pase una cadena con letras.Si se le envía un String que está formado por valores numéricos devolverá 1 número mas de éste.

public string Incrementar(string Numero)

        {

            try

            {

                int aux = Numero.Length;

                int i = 1;

                string Numero2 = "";

 

                while (Numero.Substring(aux - i, 1) == "9")

                {

                    Numero2 = "0" + Numero2;

                    i++;

                }

                Numero2 = Convert.ToString(Convert.ToInt32(Numero.Substring(aux - i, 1)) + 1) + Numero2;

                Numero2 = Numero.Substring(0, aux - i) + Numero2;

                return Numero2;

            }

            catch { return null; }

        }


Ej:

String cadena = "00001";
String cadena2 = Incrementar(cadena));

cadena2 sería "00002"

Si el número que se pasa es todo 9s: "9999", la continuación será: "0000"


Tags: ,
Posted in CSharp |

Leave a Comment

RSS