Base64String和十六进制之间的转换

本文关键字:转换 之间 十六进制 Base64String | 更新日期: 2023-09-27 18:11:36

我在C++/CLI项目中使用ToBase64String来给出一个类似/MnwRx7kRZEQBxLZEkXndA==的字符串。我想将此字符串转换为十六进制表示,如何在C++或C#中做到这一点?

Base64String和十六进制之间的转换

FromBase64String将把string带到byte

byte[] bytes = Convert.FromBase64String(string s);

然后,BitConverter.ToString()将字节数组转换为十六进制字符串(byte[]到十六进制字符串(

string hex = BitConverter.ToString(bytes);

将字符串转换为字节数组,然后进行字节到十六进制的转换

string stringToConvert = "/MnwRx7kRZEQBxLZEkXndA==";
byte[] convertedByte = Encoding.Unicode.GetBytes(stringToConvert);
string hex = BitConverter.ToString(convertedByte);
Console.WriteLine(hex);
public string Base64ToHex(string strInput)
{
    try
    {
        var bytes = Convert.FromBase64String(strInput);
        var hex = BitConverter.ToString(bytes);
        return hex.Replace("-", "").ToLower();
    }
    catch (Exception)
    {
        return "-1";
    }
}

恰恰相反:https://stackoverflow.com/a/61224761/3988122