متد getBytes() رشته را به دنباله ای از بایت ها رمزگذاری می کند و آن را در یک آرایه بایت ذخیره می کند.
سینتکس متد getBytes() عبارت است از:
در اینجا، string
یک شیء از کلاس String
است.
متد getBytes() یک آرایه بایتی را برمی گرداند.
1. getBytes() بدون هیچ پارامتر
اگر هیچ پارامتری را ارسال نکنید، getBytes()
رشته را با استفاده از charset پیش فرض پلتفرم رمزگذاری می کند.
مثال: getBytes() بدون هیچ پارامتر
خروجی
[74، 97، 118، 97]
توجه: ما از کلاس Arrays
در مثال بالا برای چاپ آرایه بایت به شکل قابل خواندن استفاده کرده ایم. و ارتباطی به getBytes()
ندارد.
2. getBytes() با پارامتر CharSet
موارد مختلفی برای CharSet
در جاوا موجود است:
- UTF-8 – فرمت تبدیل UCS هشت بیتی
- UTF-16 – فرمت تبدیل UCS شانزده بیتی
- UTF-16BE – فرمت تبدیل UCS شانزده بیتی، ترتیب بایت big-endian
- UTF-16LE – فرمت تبدیل UCS شانزده بیتی، ترتیب بایت little-endian
- US-ASCII – کد ASCII هفت بیتی
- ISO-8859-1 – الفبای لاتین ISO شماره 1
این موارد به صورت رشته موجود هستند. برای تبدیل این رشته ها به Charset باید از کلاس CharSet
و متد forName استفاده کنیم تا رشته های بالا به CharSet تبدیل شوند.
مثال: getBytes() با پارامتر CharSet
خروجی
توجه: در برنامه فوق، java.nio.charset.Charset
را برای استفاده از CharSet
وارد کرده ایم . و کلاس Arrays
را وارد کرده ایم تا آرایه بایت را به شکل قابل خواندن چاپ کند.
3. getBytes() با پارامتر String
همچنین می توانیم نوع رمزگذاری برای getBytes()
را مستقیماً از طریق رشته ها مشخص کنیم. وقتی از متد getBytes() با این روش استفاده می کنیم، باید کد را در داخل بلوک try…catch قرار دهیم. چرا که در غیر اینصورت، در صورتی که کد رشته مورد نظر اشتباه باشد، برنامه خطایی در خروجی ارسال کرده و متوقف می شود.
مثال: getBytes() با پارامتر رشته
خروجی
توجه: ما java.util.Arrays را وارد کرده ایم تا آرایه بایت را به شکل قابل خواندن چاپ کنیم و ارتباطی به getBytes()
ندارد.
دیدگاهها