char وأساسيات Unicode والتحليل والتنسيق البسيطان
افهم أن char وحدة شيفرة UTF-16، وأن أزواج البدائل تمثّل بعض المحارف، وتعلّم أساسيات ترميز UTF-8 وفك ترميزه، وتحليل الأرقام وتنسيقها بصورة بسيطة.
char وأساسيات Unicode والتحليل والتنسيق البسيطان درس مجاني في C# Academy على CoddyKit. هذا هو الدرس 3 من أصل 3. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في C# Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة C# Academy 3 دروس في المجموع.
نظرة عامة
الهدف: تعامل مع النصوص منخفضة المستوى بأمان.
- char هو UTF-16
- تستخدم بعض الرموز أزواجًا بديلة
- الترميز وفك الترميز باستخدام UTF-8
- تحليل الأرقام وتنسيقها
أساسيات char
char هو وحدة شفرة UTF-16 بحجم 16 بت؛ ويمكنك فحص الفئة باستخدام مساعدين مثل 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));
}
}
الأزواج البديلة
تحتاج بعض الأحرف إلى وحدتي شفرة UTF-16 (زوج بديل). يحسب Length وحدات الشفرة، لا الأحرف التي يدركها المستخدم.
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 وأساسيات Unicode والتحليل والتنسيق البسيطان» مجاني؟
نعم — نص درس «char وأساسيات Unicode والتحليل والتنسيق البسيطان» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة C# Academy، انتقل إلى CoddyKit PRO. تتضمن دورة C# Academy 3 دروس في المجموع.
ماذا ستتعلم في «char وأساسيات Unicode والتحليل والتنسيق البسيطان»؟
افهم أن char وحدة شيفرة UTF-16، وأن أزواج البدائل تمثّل بعض المحارف، وتعلّم أساسيات ترميز UTF-8 وفك ترميزه، وتحليل الأرقام وتنسيقها بصورة بسيطة. تتمرن على C# Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ C# Academy؟
لا تُشترط خبرة سابقة. C# Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 3.
كم من الوقت يستغرق درس «char وأساسيات Unicode والتحليل والتنسيق البسيطان»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس C# Academy هذا؟
نعم. كل درس في C# Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- السلاسل والنصوص: عدم القابلية للتغيير والاستيفاء والحرفية وStringBuilder والمقارنة
- StringBuilder والمقارنة وملاحظات الثقافة
- char وأساسيات Unicode والتحليل والتنسيق البسيطان