希望避免使用任何第三方实用程序。正在寻找一种将fccHandler
包含的“”代码转换或以某种方式翻译Avi.AVICOMPRESSOPTIONS
成人类可读的编解码器名称以用于显示目的的方法。
通过大量的抓挠和盯着数字,我开始玩弄它,直到我记得读过一些关于它是 uint 代表十六进制的东西。
这可以正确转换。:)
public string MakeFourCC(uint fccHandler)
{
string inputHex = fccHandler.ToString("X");
StringBuilder sb = new StringBuilder();
for (int i = 0; i <= inputHex.Length - 2; i += 2)
{
sb.Append(Convert.ToString(Convert.ToChar(Int32.Parse(inputHex.Substring(i, 2),
System.Globalization.NumberStyles.HexNumber))));
}
char[] array = sb.ToString().ToCharArray();
Array.Reverse(array);
return new string(array);
}