Avatar ·

كيفية طباعة شريحة u8 بصيغة سداسية عشرية في Rust؟

مرحباً أيها الزملاء! أنا مبتدئ في Rust وأحاول فهم كيفية عرض البيانات البايتية. لدي شريحة `&[u8]`، مثلاً مصفوفة بايتات تم الحصول عليها بعد قراءة ملف أو عملية تجزئة. أحتاج إلى طباعتها في وحدة التحكم كسلسلة سداسية عشرية مألوفة، كما يحدث في لغات أخرى (مثل `binascii.hexlify` في Python أو `%02x` في C). المشكلة هي أن `println!("{:?}", slice)` البسيط يطبع شيئاً مثل `[72, 101, 108, 108, 111]` - هذه أرقام عشرية، بينما أحتاج إلى سلسلة مثل `48656c6c6f`. جربت استخدام `{:X}` أو `{:02x}` في سلسلة التنسيق، لكن هذا لا يعمل مع الشرائح مباشرة. إليك مثال على الكود الذي لدي: ```rust fn main() { let data: &[u8] = &[72, 101, 108, 108, 111]; // "Hello" في ASCII // كيف يمكن طباعة data كـ "48656c6c6f"؟