کاراکترهای کنترلی

کاراکترهای کنترلی کاراکترهای ترکیبی هستند که با یک بک اسلش (\) شروع می‌شوند و به دنبال آنها یک حرف یا عدد می‌آید و یک رشته را با فرمت خاص نمایش می‌دهند. برای مثال برای ایجاد یک خط جدید و قرار دادن رشته در آن می‌توان از کاراکتر کنترلی \n استفاده کرد :

System.out.println("Hello\nWorld!");
Hello
World

مشاهده کردید که کامپایلر بعد از مواجهه با کاراکتر کنترلی \n نشانگر ماوس را به خط بعد برده و بقیه رشته را در خط بعد نمایش می‌دهد. متد Println() هم مانند کاراکتر کنترلی \nیک خط جدید ایجاد می‌کند، البته بدین صورت که در انتهای رشته یک کاراکتر کنترلی \n اضافه می‌کند :

System.out.println("Hello World!");

کد بالا و کد زیر هیچ فرقی با هم ندارند :

System.out.print("Hello World!\n");

متد Print() کارکردی شبیه به Println() دارد با این تفاوت که نشان گر ماوس را در همان خط نگه می‌دارد و خط جدید ایجاد نمی‌کند. جدول زیر لیست کاراکترهای کنترلی و کارکرد آنها را نشان می‌دهد :

کاراکتر کنترلی عملکرد کاراکتر کنترلی عملکرد
\’ چاپ کوتیشن \f Form Feed
\” چاپ دابل کوتیشن \n خط جدید
\\ چاپ بک اسلش \r سر سطر رفتن
\b حرکت به عقب \t حرکت به صورت افقی

ما برای استفاده از کاراکترهای کنترلی از بک اسلش (\) استفاده می‌کنیم. از آنجاییکه \ معنای خاصی به رشته‌ها می‌دهد برای چاپ بک اسلش (\) باید از (\\) استفاده کنیم :

System.out.println("We can print a \\ by using the \\\\ escape sequence.");
We can print a \ by using the \\ escape sequence.

یکی از موارد استفاده از \\ ، نشان دادن مسیر یک فایل در ویندوز است :

System.out.println("C:\\Program Files\\Some Directory\\SomeFile.txt");
C:\Program Files\Some Directory\SomeFile.txt

از آنجاییکه از دابل کوتیشن () برای نشان دادن رشته‌ها استفاده می‌کنیم برای چاپ آن از \”استفاده می‌کنیم :

System.out.println("I said, \"Motivate yourself!\".");
I said, "Motivate yourself!".

همچنین برای چاپ کوتیشن () از \’ استفاده می‌کنیم :

System.out.println("The programmer\'s heaven.");
The programmer's heaven.

برای ایجاد فاصله بین حروف یا کلمات از \t استفاده می‌شود :

System.out.println("Left\tRight");
Left	Right

هر تعداد کاراکتر که بعد از کاراکتر کنترلی \r بیایند به اول سطر منتقل و جایگزین کاراکترهای موجود می‌شوند :

System.out.println("Mitten\rK");
K

مثلاً در مثال بالا کاراکتر K بعد از کاراکتر کنترلی \r آمده است. کاراکتر کنترلی حرف K را به ابتدای سطر برده و جایگزین Mitten می‌کند. برای مشاهده لیست مقادیر مبنای 16 برای کاراکترهای یونیکد به لینک زیر مراجعه نمایید :

اگر کامپایلر به یک کاراکتر کنترلی غیر مجاز برخورد کند، برنامه پیغام خطا می‌دهد. بیشترین خطا زمانی اتفاق می افتد که برنامه نویس برای چاپ اسلش (\) از \\ استفاده می‌کند.