Custom Object Formatting : Custom Format « Development « C# / CSharp Tutorial






using System;

class Employee: IFormattable
{
    int    id;
    string    firstName;
    string    lastName;

    public Employee(int id, string firstName, string lastName)
    {
        this.id = id;
        this.firstName = firstName;
        this.lastName = lastName;
    }
    public string ToString (string format, IFormatProvider fp) 
    {
        if ((format != null) && (format.Equals("F")))
            return(String.Format("{0}: {1}, {2}", id, lastName, firstName));
        else
            return(id.ToString(format, fp));
    }
}

class MainClass
{
    public static void Main()
    {
        Employee fred = new Employee(123, "First", "Last");
        Console.WriteLine("No format: {0}", fred);
        Console.WriteLine("Full format: {0:F}", fred);
    }
}
No format: 123
Full format: 123: Last, First








14.5.Custom Format
14.5.1.Custom Object Formatting
14.5.2.Create customized format for Complex
14.5.3.Formatting Using System.Console.WriteLine()
14.5.4.The value 99999 in various formats
14.5.5.Custom Format Specifiers
14.5.6.format as currency
14.5.7.format in lowercase hex
14.5.8.format in uppercase hex
14.5.9.format as custom
14.5.10.Using the \n Character to Insert a Newline
14.5.11.Swapping the Indexed Placeholders and Corresponding Variables
14.5.12.Formatting flags
14.5.13.Upper or lower casing for hex determines if letters are upper/lowercase