char, 유니코드 기초, 간단한 구문 분석과 서식 지정
char가 UTF-16 코드 단위라는 점, 일부 문자에 사용되는 서로게이트 쌍, 기본 UTF-8 인코딩/디코딩, 간단한 숫자 구문 분석과 서식 지정을 이해합니다.
char, 유니코드 기초, 간단한 구문 분석과 서식 지정은(는) CoddyKit의 무료 C# Academy 강의입니다. 이것은 3개 중 3번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 C# Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. C# Academy 강의에는 총 3개의 강의가 포함되어 있습니다.
개요
목표: 저수준 텍스트를 안전하게 처리합니다.
- char는 UTF-16입니다.
- 일부 기호는 서로게이트 쌍을 사용합니다.
- UTF-8로 인코딩하고 디코딩합니다.
- 숫자를 구문 분석하고 형식을 지정합니다.
char 기본
char는 16비트 UTF-16 코드 단위입니다. char.IsLetter와 같은 범주 확인 helper를 사용할 수 있습니다.
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));
}
}
서로게이트 쌍
일부 문자는 UTF-16 코드 단위 두 개가 필요합니다(서로게이트 쌍). 길이는 사용자가 인식하는 문자가 아니라 코드 단위의 개수를 셉니다.
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]));
}
}
UTF-8 왕복 변환
저장이나 입출력을 위해 System.Text.Encoding.UTF8을 사용하여 문자열과 바이트 사이를 변환합니다.
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);
}
}
구문 분석과 형식 지정
문화권을 고려하여 Parse하고, 예외를 피하려면 TryParse를 사용합니다. ToString은 값의 형식을 지정합니다(예: 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
}
}
공백 제거와 분할
Trim으로 공백을 제거하고 Split으로 토큰을 나눕니다. 결과를 깔끔하게 만들려면 항상 토큰의 공백도 제거합니다.
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);
}
}
}
char의 정의
복습
복습: char는 UTF-16 코드 단위입니다. 이모지는 서로게이트 쌍일 수 있습니다. 바이트에는 UTF-8로 인코딩하고, TryParse로 안전하게 구문 분석하며, ToString 패턴으로 형식을 지정합니다.
자주 묻는 질문
“char, 유니코드 기초, 간단한 구문 분석과 서식 지정” 강의는 무료인가요?
네 — “char, 유니코드 기초, 간단한 구문 분석과 서식 지정” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 C# Academy 강의 전체를 잠금 해제할 수 있습니다. C# Academy 강의에는 총 3개의 강의가 포함되어 있습니다.
“char, 유니코드 기초, 간단한 구문 분석과 서식 지정”에서 뭘 배우나요?
char가 UTF-16 코드 단위라는 점, 일부 문자에 사용되는 서로게이트 쌍, 기본 UTF-8 인코딩/디코딩, 간단한 숫자 구문 분석과 서식 지정을 이해합니다. 브라우저에서 직접 실행하는 실습 코드로 C# Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
C# Academy을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 C# Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 3개 중 3번째 강의입니다.
“char, 유니코드 기초, 간단한 구문 분석과 서식 지정” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 C# Academy 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 C# Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- 문자열과 텍스트: 불변성, 보간, 축자 문자열, StringBuilder, 비교
- StringBuilder, 비교와 문화권 참고 사항
- char, 유니코드 기초, 간단한 구문 분석과 서식 지정