我有一个类似以下的枚举:
public enum AudioEncoding
{
PCM_24Bit = 0,
ADPCM_24Bit = 1,
MPEG2_128kBit = 2
}
我需要将字符串的三位数基数2转换为枚举器的值,如"010"
。
我已尝试以下内容转换为字符串基数2:
int audioEncInt = (int)AudioEncoding.ADPCM_24Bit;
string audioEncStr = Convert.ToString(audioEncInt, 2);
它可以正常工作,但它返回一个字符串值"10"
。如何返回字符串值"010"
?
答案 0 :(得分:2)
var audioEncStr = Convert.ToString(audioEncInt, 2).PadLeft(3,'0');
答案 1 :(得分:2)
如果它是一个恒定的3个字符,你可以使用PadLeft
int audioEncInt = (int)AudioEncoding.ADPCM_24Bit;
string audioEncStr = Convert.ToString(audioEncInt, 2).PadLeft(3, '0');
如果字符串不是指定的长度
,那么它将在字符串的左边添加零答案 2 :(得分:1)
你可以简单地使用string.PadLeft方法:
int audioEncInt = (int)AudioEncoding.ADPCM_24Bit;
string audioEncStr = Convert.ToString(audioEncInt, 2);
audioEncStr = audioEncStr.PadLeft(3, '0');