Char.ToLower, ToUpper. ToLower converts only uppercase letters. It changes uppercase letters to lowercase letters. It leaves all other characters unchanged.
C# method info. ToLower and ToUpper are ideal for character conversions. These methods are included in .NET, and act on all characters in a reliable way.
Input and output. Consider the uppercase letter "A." This has the ASCII value 65. When lowercased, it equals "a" which is ASCII 97.
A (65)
a (97)
An example. Here we see char.ToLower. This converts uppercase characters to lowercase characters, while not changing characters that are already lowercase or digits.
Part 1 The 4 calls to char.ToLower show how this static method is used. And the comments show the values returned.
Part 2 The 4 calls to char.ToUpper show how this method is used. The result from each call is shown.
Part 3 We print the results to the console with several calls to Console.WriteLine.
using System;
char c1 = 'a'; // Lowercase a
char c2 = 'b'; // Lowercase b
char c3 = 'C'; // Uppercase C
char c4 = '3'; // Digit 3// Part 1: use char.ToLower.
char lower1 = char.ToLower(c1); // a
char lower2 = char.ToLower(c2); // b
char lower3 = char.ToLower(c3); // c [changed]
char lower4 = char.ToLower(c4); // 3// Part 2: use char.ToUpper.
char upper1 = char.ToUpper(c1); // A [changed]
char upper2 = char.ToUpper(c2); // B [changed]
char upper3 = char.ToUpper(c3); // C
char upper4 = char.ToUpper(c4); // 3// Part 3: write results.
Console.WriteLine(c1 + "," + c2 + "," + c3 + "," + c4);
Console.WriteLine(lower1 + "," + lower2 + "," + lower3 + "," + lower4);
Console.WriteLine(upper1 + "," + upper2 + "," + upper3 + "," + upper4);a,b,C,3
a,b,c,3
A,B,C,3
IsLower, IsUpper. Sometimes we need to first test if a character is lowercase or uppercase. The char.IsLower and IsUpper methods in C# help here.
using System;
string test = "AxZ";
// Call IsLower and IsUpper in loop.
foreach (char value in test)
{
if (char.IsLower(value))
{
Console.WriteLine("LOWER");
}
else if (char.IsUpper(value))
{
Console.WriteLine("UPPER");
}
}UPPER
LOWER
UPPER
InvariantCulture. These 2 methods use the CultureInfo.InvariantCulture parameter internally. The letters are lowercased and uppercased the same in all globalization settings.
Performance notes. Finally, the char.ToLower and char.ToUpper methods have worse performance than a custom method that tests ASCII values. It can be worthwhile to use a custom method.
Summary. Programs that handle characters can benefit from char.ToLower and char.ToUpper. These are simple but useful methods, ready to call with no extra code.
Dot Net Perls is a collection of pages with code examples, which are updated to stay current. Programming is an art, and it can be learned from examples.
Donate to this site to help offset the costs of running the server. Sites like this will cease to exist if there is no financial support for them.
Sam Allen is passionate about computer languages, and he maintains 100% of the material available on this website. He hopes it makes the world a nicer place.
This page was last updated on Jan 30, 2024 (edit).