char, podstawy Unicode, proste analizowanie i formatowanie
Poznaj char (jednostka kodu UTF-16), pary zastępcze dla niektórych znaków, podstawy kodowania/dekodowania UTF-8 oraz proste analizowanie i formatowanie liczb.
char, podstawy Unicode, proste analizowanie i formatowanie to bezpłatna lekcja C# Academy na CoddyKit. To lekcja 3 z 3. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej C# Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs C# Academy zawiera 3 lekcji w sumie.
Przegląd
Cel: Bezpieczna obsługa tekstu na niskim poziomie.
- char używa kodowania UTF-16
- Niektóre symbole korzystają z par zastępczych
- Kodowanie i dekodowanie za pomocą UTF-8
- Parsowanie i formatowanie liczb
Podstawy char
char to 16-bitowa jednostka kodowa UTF-16; można sprawdzać jej kategorię za pomocą metod pomocniczych, takich jak char.IsLetter.
using System;
public class Program
{
public static void Main(string[] args)
{
char ch = 'A';
Console.WriteLine("ch = " + ch);
Console.WriteLine("UTF-16 code unit = " + (int)ch); // 65
Console.WriteLine("IsLetter? " + char.IsLetter(ch));
Console.WriteLine("ToLower = " + char.ToLower(ch));
}
}
Pary zastępcze
Niektóre znaki wymagają dwóch jednostek kodowych UTF-16 (pary zastępczej). Długość zlicza jednostki kodowe, a nie znaki postrzegane przez użytkownika.
using System;
public class Program
{
public static void Main(string[] args)
{
// Smiling face U+1F603 represented as a surrogate pair in UTF-16
string s = "\uD83D\uDE03";
Console.WriteLine("Text: " + s);
Console.WriteLine("Length (chars) = " + s.Length); // 2
Console.WriteLine("First char high surrogate? " + char.IsHighSurrogate(s[0]));
Console.WriteLine("Second char low surrogate? " + char.IsLowSurrogate(s[1]));
}
}
Konwersja UTF-8 w obie strony
Należy używać System.Text.Encoding.UTF8 do konwersji między łańcuchami znaków a bajtami na potrzeby przechowywania lub operacji wejścia-wyjścia.
using System;
using System.Text;
public class Program
{
public static void Main(string[] args)
{
string text = "Café ☕"; // includes an accent + emoji
byte[] bytes = Encoding.UTF8.GetBytes(text); // encode to UTF-8
string back = Encoding.UTF8.GetString(bytes); // decode
Console.WriteLine("Original: " + text);
Console.WriteLine("Bytes UTF-8 = " + bytes.Length);
Console.WriteLine("Roundtrip: " + back);
}
}
Parsowanie i formatowanie
Należy używać Parse z uwzględnieniem kultury; TryParse pozwala uniknąć wyjątków. ToString formatuje wartości (np. N2, C).
using System;
using System.Globalization;
public class Program
{
public static void Main(string[] args)
{
// Parsing (safe)
int n;
bool ok = int.TryParse("123", out n);
Console.WriteLine("ok=" + ok + " n=" + n);
// Parsing (throws if invalid)
try
{
double d = double.Parse("3.14", CultureInfo.InvariantCulture);
Console.WriteLine("d=" + d);
}
catch (Exception ex)
{
Console.WriteLine("Parse error: " + ex.Message);
}
// Formatting
double price = 1234.5;
Console.WriteLine(price.ToString("N2", CultureInfo.InvariantCulture)); // 1,234.50
Console.WriteLine(price.ToString("C", CultureInfo.GetCultureInfo("en-US"))); // currency example
}
}
Przycinanie i dzielenie
Należy używać Trim do usuwania białych znaków oraz Split do dzielenia na tokeny; tokeny należy zawsze przycinać, aby uzyskać czyste wyniki.
using System;
public class Program
{
public static void Main(string[] args)
{
string input = " apple, banana , cherry ";
string trimmed = input.Trim();
string[] parts = trimmed.Split(',');
for (int i = 0; i < parts.Length; i = i + 1)
{
string item = parts[i].Trim(); // clean each token
Console.WriteLine("Item: " + item);
}
}
}
Definicja char
Podsumowanie
Podsumowanie: char = jednostka kodowa UTF-16; emoji mogą być parami zastępczymi. Do kodowania bajtów należy używać UTF-8. Dane należy bezpiecznie analizować za pomocą TryParse i formatować przy użyciu wzorców ToString.
Często zadawane pytania
Czy lekcja „char, podstawy Unicode, proste analizowanie i formatowanie” jest bezpłatna?
Tak — pełny tekst „char, podstawy Unicode, proste analizowanie i formatowanie” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu C# Academy, przejdź na CoddyKit PRO. Kurs C# Academy zawiera 3 lekcji w sumie.
Co nauczysz się w „char, podstawy Unicode, proste analizowanie i formatowanie”?
Poznaj char (jednostka kodu UTF-16), pary zastępcze dla niektórych znaków, podstawy kodowania/dekodowania UTF-8 oraz proste analizowanie i formatowanie liczb. Ćwiczysz C# Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć C# Academy?
Nie wymagamy żadnego doświadczenia. C# Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 3.
Ile czasu zajmuje lekcja „char, podstawy Unicode, proste analizowanie i formatowanie”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji C# Academy?
Tak. Każda lekcja C# Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Napisy i tekst: niezmienność, interpolacja, verbatim, StringBuilder, porównywanie
- StringBuilder, porównywanie i uwagi dotyczące kultur
- char, podstawy Unicode, proste analizowanie i formatowanie