title: What is String Format C# {0,12:N0} (colon and commas) means?
body: <p>Okay here's the code example:</p>
  
  <pre><code> string header = String.Format("{0,-12}{1,8}{2,12}{1,8}{2,12}{3,14}\n",
                                  "City", "Year", "Population", "Change (%)");
    Console.WriteLine(header);
    string output;      
    foreach (var city in cities) {
       output = String.Format("{0,-12}{1,8:yyyy}{2,12:N0}{3,8:yyyy}{4,12:N0}{5,14:P1}",
                              city.Item1, city.Item2, city.Item3, city.Item4, city.Item5,
                              (city.Item5 - city.Item3)/ (double)city.Item3);
       Console.WriteLine(output);
    }
   }
  }
  // The example displays the following output:
  //    City            Year  Population    Year  Population    Change (%)
  //    
  //    Los Angeles     1940   1,504,277    1950   1,970,358        31.0 %
  //    New York        1940   7,454,995    1950   7,891,957         5.9 %
  //    Chicago         1940   3,396,808    1950   3,620,962         6.6 %
  //    Detroit         1940   1,623,452    1950   1,849,568        13.9 %
  </code></pre>
  
  <p>i understand about the colon after the args {0:N0} means no decimal, but what about the comas? like {0,-12}, and {1,12} what does comma means after the argument of the string format?</p>