Non sono sicuro se questo si qualifica come odore di codice, o se potrebbe esserci un modo migliore per eseguire lo stesso compito, ma, in pratica, voglio formattare una stringa di 10 cifre, usando C #, e avere le seguenti opzioni ...
Opzione 1
public string FormatNumber(string value)
{
int i;
if(int.TryParse(value, out i)) return i.ToString("000 000 0000");
else throw new InvalidArgumentException("'" + value + "' is not a valid argument.");
}
Opzione 2
public string FormatNumber(string value)
{
int i;
if(int.TryParse(value, out i)) return value.Insert(6," ").Insert(3," ");
else throw new InvalidArgumentException("'" + value + "' is not a valid argument.");
}
Entrambi ottengono il risultato corretto, ma entrambi si sentono un po '... puzzolenti.
Sono troppo pedante, o è un chiaro vincitore?