Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C#

Định dạng Hexadecimal (X) trong C#

Chuẩn định dạng "X" hoặc "x" chuyển số nguyên sang chuỗi hệ thập lục phân (hexadecimal). Chữ hoa X cho kết quả chữ hoa (A-F), chữ thường x cho chữ thường (a-f).

Cú pháp

number.ToString("X")      // Hex chữ hoa, không padding
number.ToString("X8")     // Hex chữ hoa, tối thiểu 8 ký tự (đệm 0 đầu)
number.ToString("x")      // Hex chữ thường

Ví dụ hoàn chỉnh

using System;
using System.Numerics;
using System.Globalization;

class Demo
{
    static void Main()
    {
        int num = 345672832;
        Console.WriteLine(num.ToString("X"));      // 149A8C80
        Console.WriteLine(num.ToString("X2"));     // 149A8C80 (ít nhất 2 ký tự)
        
        num = 0x307e;  // Hex literal
        Console.WriteLine(num.ToString("x"));      // 307e
        Console.WriteLine(num.ToString("X"));      // 307E
    }
}

Kết quả

149A8C80
149A8C80
307e
307E

Các định dạng số phổ biến

FormatTênVí dụ (255)
X / xHexadecimalFF / ff
D / dDecimal255
B / bBinary (custom)11111111 (cần custom)
NNumber (có nhóm nghìn)255.00

Padding với độ rộng cố định

// "X4" = ít nhất 4 ký tự hex, đệm 0 đầu
255.ToString("X4")   // "00FF"
15.ToString("X4")    // "000F"

// Kết hợp với format string
$"{value:X8}"        // 8 ký tự hex
string.Format("{0:X4}", value);

Lưu ý

  • Chỉ áp dụng cho kiểu số nguyên: byte, short, int, long và unsigned.
  • Không hỗ trợ float, double, decimal.
  • Số âm được biểu diễn bằng bù 2 (two's complement) - ví dụ (-1).ToString("X") = "FFFFFFFF" (int).
  • Dùng CultureInfo.InvariantCulture để đảm bảo nhất quán.