C#代码示例:进制转换与字符串格式化

需积分: 14 1 下载量 156 浏览量 更新于2024-09-12 收藏 27KB DOCX 举报
本文档主要介绍了在.NET编程中进行不同进制之间的转换操作,包括字符串转16进制字节数组、十进制转二进制、八进制和十六进制,以及各种进制间的互转。以下是具体知识点的详细解析: 1. **字符串转16进制字节数组**: `strToToHexByte` 方法用于将给定的字符串形式的16进制转换为字节数组。首先,它删除字符串中的前导空格,并确保输入字符串长度是偶数,因为每两个字符代表一个16进制数。接着,通过`Convert.ToByte`方法,将每个两位的子字符串转换为单个字节,然后将所有字节存储到`returnBytes`数组中。 2. **基本进制转换**: - **十进制转二进制**: 使用`Convert.ToString`方法,传入十进制数值(如69)和基数2,得到对应的二进制表示。 - **十进制转八进制**: 同样用`Convert.ToString`方法,基数设为8。 - **十进制转十六进制**: 基数设为16,用于获取十六进制表示。 3. **非十进制转十进制**: - **二进制转十进制**: 将二进制字符串(如"100111101")转换为整数,基数为2。 - **八进制转十进制**: 以"76"为例,同样使用`Convert.ToInt32`,基数设为8。 - **十六进制转十进制**: 以"FF"为例,十六进制表示转换为十进制。 4. **格式化货币和数字显示**: - **C货币格式**: 如"C2.5",表示人民币金额,保留两位小数。 - **D十进制格式**: "D5"示例,保留5位数,不足位数填充0。 - **E科学记数法**: "E"前缀表示科学计数法,如"2.500000E+005"。 - **F固定小数点格式**: "F2"表示最多保留两位小数。 - **G常规格式**: "G"表示根据数值大小自动选择合适的格式,例如"2.5"。 - **N数字格式**: "N"表示自动舍入数字并保留小数点后三位,不足位数补零,如"2,500,000.00"。 - **X十六进制格式**: "X"表示十六进制,如"FF"。 5. **字节数组转16进制字符串**: 文档中未提供具体实现,但提到有一个方法用于将字节数组转换为16进制字符串,这通常涉及到遍历字节,将其每位转换为16进制字符,然后连接成字符串。 这些代码片段展示了.NET中基本的进制转换功能,以及数字格式化的方法,这对于处理数据存储和显示时非常实用。理解并掌握这些基础操作有助于开发人员在实际项目中高效地处理和转换不同进制的数据。