C# String Format Method

In c#, the string Format method is used to insert the variable's value or an object or expression into another string. Using the string Format method, we can replace the format items in the specified string with the string representation of specified objects.

 

Following is the pictorial representation of using a string Format() method to insert a variable or expression values into another string in the c# programming language.

 

C# String Format Method Representation Diagram

 

If you observe the above diagram, we inserted format items inside of the string and replaced those formatted items with the specified string values using the Format method.

C# String Format Method Syntax

The following are the syntaxes of defining a string Format method to replace inserted format items within the string using specified string objects in the c# programming language.

 

public string Format(string, object)
public string Format(string, object, object)
public string Format(IFormatProvider, string, object)

If you observe the above syntaxes, the first syntax replaces one or more format items in a string with the string representation of a specified object.

 

The second syntax replaces the format items in a string with the string representation of two specified objects. The third syntax replaces the format items in a specified string with the string representation of the corresponding object.

C# String Format Method Example

Following is the example of using a string Format() method to insert an object or variable or expression value into another string in the c# programming language.

 

using System;

namespace Tutlane
{
    class Program
    {
       static void Main(string[] args)
       {
           string s = "Name:{0} {1}, Location:{2}, Age:{3}";
           string msg = string.Format(s, "Suresh", "Dasari", "Hyderabad", 32);
           Console.WriteLine("Format Result: {0}", msg);
           Console.WriteLine("\nPress Enter Key to Exit..");
           Console.ReadLine();
       }
    }
}

If you observe the above example, we used a string Format() method to replace format items in a given string.

 

When you execute the above c# program, we will get the result below.

 

C# String Format Method Example Result

 

If you observe the above result, the string Format() method has replaced format items {0} with “Suresh”, {1} with “Dasari”, {2} with “Hyderabad” and {3} with “32” in the given string based on our requirements.

C# Format String Items

In the above example, we used a string Format() method to replace format items within the string, but by using the Format() method, you can control the appearance of format items.

 

Following is the example of controlling the appearance of format items using the string Format() method in the c# programming language.

 

using System;

namespace Tutlane
{
    class Program
    {
        static void Main(string[] args)
        {
            decimal num = 75.73789621m;
            DateTime datetime = DateTime.Now;
            Console.WriteLine("Format Decimal: {0:n2}", num);
            Console.WriteLine("DateTime: {0}", datetime);
            Console.WriteLine("Only Date: {0:D}", datetime);
            Console.WriteLine("Only Time: {0:T}", datetime);
            Console.WriteLine("\nPress Enter Key to Exit..");
            Console.ReadLine();
        }
    }
}

If you observe the above code, we are formatting given decimal numbers to only decimal values using {0:n2} and formatting DateTime value to display only date {0:d} or time {0:t} based on our requirements.

 

When you execute the above c# program, we will get the result below.

 

C# Format String Items using Format Method Example Result

 

If you observe the above result, we are formatting the given item values using the Format() method based on our requirements.

C# Date Time Formats

In c#, we have different formats to format the object values using the Format() method. The following table lists the different types of date-time formats available in c# to format the given date-time values. Generally, the Date/Time formats depend on the user locale, so that the output may differ.

 

CharacterDescriptionUsageExample
d Short Date {0:d} 29-05-2018
D Long Date {0:D} 29 May 2018
t Short Time {0:t} 05:29:20
T Long Time {0:T} 05:29:20
f or F Long Date Time {0:f} 29 May 2018 05:30:08
g or G Short Date Time {0:g} 29-05-2018 05:31:42
M Short Date {0:M} May 29
r RFC1123 Date Time String {0:r} Tue, 29 May 2018 05:33:02 GMT
s Sortable Date/Time {0:s} 2018-05-29T05:34:10
u Universal Sortable Date {0:u} 2018-05-29 05:35:47Z
U Universal full date {0:U} 29 May 2018 00:08:07
Y Year month pattern {0:Y} May, 2018

C# Number Formats

The following table lists the different types of number formats available in c# to format the given numerical values. For example, we are passing the decimal value is 75674.73789621.

 

CharacterDescriptionUsageExample
c Currency {0:c} $ 75,674.74
e Scientific {0:e} 7.567474e+004
f Fixed Point {0:f} 75674.74
g General {0:g} 75674.73789621
n Thousand Separator {0:n} 75,674.74

C# Custom Formats

In c#, we can also use custom formats to format the string. The following table lists the different types of custom formats that we can use to format the strings. For example, we are passing the decimal value is 75674.73789621.

 

CharacterDescriptionUsageExample
0 Zero Placeholder {0:00.00} 75674.74
# Digit Placeholder {0:(#).##} (75674).74
. Decimal Point {0:0.000} 75674.738
, Thousand Separator {0:0,0} 75,675
% Percent {0:0%} 7567474%

This is how you can use the string Format() method to insert format items into a given string and replace them with their respective values in the c# programming language.