کتابخانه‌ی استاندارد · کدگذاری و داده

کدگذاری encoding

تبدیل متن و داده به پایه‌۶۴، شانزده‌شانزدهی و کدگذاری نشانی وب.

واردسازی کدگذاری
در این صفحه
  1. روال‌ها

این بسته راه‌های رایج نوشتن بایت‌ها به شکل متن ساده را دارد: پایه‌۶۴ برای جا دادن داده‌ی دودویی در جیسون یا ایمیل، شانزده‌شانزدهی (هگز) برای نمایش بایت‌ها، و کدگذاری نشانی برای گذاشتن متن فارسی یا نویسه‌های خاص در نشانی وب.

قالب‌های بزرگ‌تر، مثل جیسون، یامل و اکس‌ام‌ال، زیربسته‌های خودشان را دارند که در همین گروه فهرست شده‌اند.

روال‌ها

کدگذاری پایه۶۴ Base64Encode

روال کدگذاری پایه۶۴(data: رشته): رشته
متن را به پایه‌۶۴ استاندارد (با = در انتها) تبدیل می‌کند.
encoding-Base64.salam
واردسازی کدگذاری
واردسازی حافظه

روال ریشه:
    ک := کدگذاری.کدگذاری پایه۶۴("سلام دنیا")
    سرچاپ ک
    سرچاپ کدگذاری.کدگشایی پایه۶۴(ک)
    ناپایا سالم := نادرست
    سرچاپ "[" + کدگذاری.کدگشایی پایه۶۴ سخت گیرانه("***"، سالم) + "]"، سالم
    سرچاپ کدگذاری.کدگشایی پایه۶۴ سخت گیرانه("YWJj"، سالم)، سالم
    ب := حافظه.تخصیص(۳ برگردان طبیعی۶۴)
    حافظه.تنظیم(ب، ۲۵۵، ۳ برگردان طبیعی۶۴)
    سرچاپ کدگذاری.کدگذاری بایت‌ها پایه۶۴(ب، ۳)
    خروجی := حافظه.تخصیص(۸ برگردان طبیعی۶۴)
    سرچاپ کدگذاری.کدگشایی پایه۶۴ به بایت("AAEC"، خروجی، ۸، سالم)، سالم
    حافظه.آزادسازی(ب)
    حافظه.آزادسازی(خروجی)
پایان
خروجی2LPZhNin2YUg2K/ZhtuM2Kc= سلام دنیا [] false abc true //// 3 true

کدگذاری بایت‌ها پایه۶۴ Base64EncodeBytes

روال کدگذاری بایت‌ها پایه۶۴(data: تهی*، n: صحیح): رشته
n بایت از حافظه را به پایه‌۶۴ تبدیل می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: encoding-Base64.salam

کدگشایی پایه۶۴ Base64Decode

روال کدگشایی پایه۶۴(s: رشته): رشته
پایه‌۶۴ را به متن برمی‌گرداند؛ فاصله و خط تازه‌ی میان متن نادیده گرفته می‌شود.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: encoding-Base64.salam

کدگذاری شانزده HexEncode

روال کدگذاری شانزده(data: رشته): رشته
هر بایت متن را با دو رقم شانزده‌شانزدهی کوچک می‌نویسد.
encoding-Hex.salam
واردسازی کدگذاری

روال ریشه:
    ش := کدگذاری.کدگذاری شانزده("Hi!")
    سرچاپ ش، کدگذاری.کدگشایی شانزده(ش)
    سرچاپ کدگذاری.مقدار شانزده("f")، کدگذاری.مقدار شانزده("A")، کدگذاری.مقدار شانزده("z")
    ن := کدگذاری.کدگذاری نشانی("نام=علی & سن=۳۰")
    سرچاپ ن
    سرچاپ کدگذاری.کدگشایی نشانی(ن)
پایان
خروجی486921 Hi! 15 10 -1 %D9%86%D8%A7%D9%85%3D%D8%B9%D9%84%DB%8C%20%26%20%D8%B3%D9%86%3D%DB%B3%DB%B0 نام=علی & سن=۳۰

مقدار شانزده HexVal

روال مقدار شانزده(c: رشته): صحیح
مقدار یک رقم شانزده‌شانزدهی؛ برای نویسه‌ی نامعتبر ‎-1.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: encoding-Hex.salam

کدگشایی شانزده HexDecode

روال کدگشایی شانزده(s: رشته): رشته
رشته‌ی شانزده‌شانزدهی را به بایت‌های اصلی برمی‌گرداند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: encoding-Hex.salam

کدگذاری نشانی URLEncode

روال کدگذاری نشانی(s: رشته): رشته
متن را برای گذاشتن در نشانی وب درصدی‌کدگذاری می‌کند؛ حروف و رقم‌های لاتین و -_.~ دست‌نخورده می‌مانند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: encoding-Hex.salam

کدگشایی نشانی URLDecode

روال کدگشایی نشانی(s: رشته): رشته
کدگذاری درصدی را برمی‌گرداند و + را فاصله می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: encoding-Hex.salam

کدگشایی پایه۶۴ سخت گیرانه Base64DecodeStrict

روال کدگشایی پایه۶۴ سخت گیرانه(s: رشته، ok &: منطقی): رشته
مثل کدگشایی پایه۶۴، ولی با هر نویسه‌ی نامعتبر ok را نادرست می‌کند و رشته‌ی خالی برمی‌گرداند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: encoding-Base64.salam

کدگشایی پایه۶۴ به بایت Base64DecodeBytes

روال کدگشایی پایه۶۴ به بایت(s: رشته، out: تهی*، cap: صحیح، ok &: منطقی): صحیح
پایه‌۶۴ را در حافظه‌ی out (با ظرفیت cap) کدگشایی می‌کند و تعداد بایت‌ها را برمی‌گرداند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: encoding-Base64.salam