ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:18.57KB ,
资源ID:4458197      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4458197.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C# 进制之间的转换.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C# 进制之间的转换.docx

1、C# 进制之间的转换C# 进制之间的转换 1 / <summary> 2 / 十进制转换为二进制 3 / </summary> 4 / <param name=x></param> 5 / <returns></returns> 6 public static string DecToBin(string x) 7 8 string z = null; 9 int X = Convert.ToInt32(x); 10 int i = 0; 11 long a, b = 0; 12 while (X > 0) 13 1

2、4 a = X%2; 15 X = X/2; 16 b = b + a*Pow(10, i); 17 i+; 18 19 z = Convert.ToString(b); 20 return z; 21 22 23 / <summary> 24 / 16进制转ASCII码 25 / </summary> 26 / <param name=hexString></param> 27 / <returns></returns> 28 public static string HexToAscii(string hexStrin

3、g) 29 30 StringBuilder sb = new StringBuilder(); 31 for (int i = 0; i <= hexString.Length - 2; i += 2) 32 33 sb.Append( 34 Convert.ToString( 35 Convert.ToChar(Int32.Parse(hexString.Substring(i, 2), 36 System.Globalization.NumberStyles.HexNumber); 37 38 return sb.ToString(); 39 40 41 / <summary

4、> 42 / 十进制转换为八进制 43 / </summary> 44 / <param name=x></param> 45 / <returns></returns> 46 public static string DecToOtc(string x) 47 48 string z = null; 49 int X = Convert.ToInt32(x); 50 int i = 0; 51 long a, b = 0; 52 while (X > 0) 53 54 a = X%8; 55 X = X/8; 56 b

5、= b + a*Pow(10, i); 57 i+; 58 59 z = Convert.ToString(b); 60 return z; 61 62 63 / <summary> 64 / 十进制转换为十六进制 65 / </summary> 66 / <param name=x></param> 67 / <returns></returns> 68 public static string DecToHex(string x) 69 70 if (string.IsNullOrEmpty(x) 71 72 retu

6、rn 0; 73 74 string z = null; 75 int X = Convert.ToInt32(x); 76 Stack a = new Stack(); 77 int i = 0; 78 while (X > 0) 79 80 a.Push(Convert.ToString(X%16); 81 X = X/16; 82 i+; 83 84 while (a.Count != 0) 85 z += ToHex(Convert.ToString(a.Pop(); 86 if (string.IsNullOrEmpty(z) 87 88 z = 0; 89 90 return

7、 z; 91 92 93 / <summary> 94 / 二进制转换为十进制 95 / </summary> 96 / <param name=x></param> 97 / <returns></returns> 98 public static string BinToDec(string x) 99 100 string z = null;101 int X = Convert.ToInt32(x);102 int i = 0;103 long a, b = 0;104 while (X > 0)105 10

8、6 a = X%10;107 X = X/10;108 b = b + a*Pow(2, i);109 i+;110 111 z = Convert.ToString(b);112 return z;113 114 115 / <summary>116 / 二进制转换为十进制,定长转换117 / </summary>118 / <param name=x></param>119 / <param name=iLength></param>120 / <returns></returns>121 pu

9、blic static string BinToDec(string x, short iLength)122 123 StringBuilder sb = new StringBuilder();124 int iCount = 0;125 126 iCount = x.Length/iLength;127 128 if (x.Length%iLength > 0)129 130 iCount += 1;131 132 133 int X = 0;134 135 for (int i = 0; i < iCount; i+)136 137 if (i + 1)*iLength &

10、gt; x.Length)138 139 X = Convert.ToInt32(x.Substring(i*iLength, (x.Length - iLength);140 141 else142 143 X = Convert.ToInt32(x.Substring(i*iLength, iLength);144 145 int j = 0;146 long a, b = 0;147 while (X > 0)148 149 a = X%10;150 X = X/10;151 b = b + a*Pow(2, j);152 j+;153 154 sb.AppendFormat(0:

11、D2, b);155 156 return sb.ToString();157 158 159 / <summary>160 / 二进制转换为十六进制,定长转换161 / </summary>162 / <param name=x></param>163 / <param name=iLength></param>164 / <returns></returns>165 public static string BinToHex(string x, short iLength)166 167 Str

12、ingBuilder sb = new StringBuilder();168 int iCount = 0;169 170 iCount = x.Length/iLength;171 172 if (x.Length%iLength > 0)173 174 iCount += 1;175 176 177 int X = 0;178 179 for (int i = 0; i < iCount; i+)180 181 if (i + 1)*iLength > x.Length)182 183 X = Convert.ToInt32(x.Substring(i*iLength,

13、 (x.Length - iLength);184 185 else186 187 X = Convert.ToInt32(x.Substring(i*iLength, iLength);188 189 int j = 0;190 long a, b = 0;191 while (X > 0)192 193 a = X%10;194 X = X/10;195 b = b + a*Pow(2, j);196 j+;197 198 /前补0199 sb.Append(DecToHex(b.ToString();200 201 return sb.ToString();202 203 204

14、/ <summary>205 / 八进制转换为十进制206 / </summary>207 / <param name=x></param>208 / <returns></returns>209 public static string OctToDec(string x)210 211 string z = null;212 int X = Convert.ToInt32(x);213 int i = 0;214 long a, b = 0;215 while (X > 0)216 217 a = X%10;21

15、8 X = X/10;219 b = b + a*Pow(8, i);220 i+;221 222 z = Convert.ToString(b);223 return z;224 225 226 227 / <summary>228 / 十六进制转换为十进制229 / </summary>230 / <param name=x></param>231 / <returns></returns>232 public static string HexToDec(string x)233 234 if (string.IsN

16、ullOrEmpty(x)235 236 return 0;237 238 string z = null;239 Stack a = new Stack();240 int i = 0, j = 0, l = x.Length;241 long Tong = 0;242 while (i < l)243 244 a.Push(ToDec(Convert.ToString(xi);245 i+;246 247 while (a.Count != 0)248 249 Tong = Tong + Convert.ToInt64(a.Pop()*Pow(16, j);250 j+;251 25

17、2 z = Convert.ToString(Tong);253 return z;254 255 256 #endregion /Helperfunctions257 258 / <summary>259 / 260 / </summary>261 / <param name=x></param>262 / <param name=y></param>263 / <returns></returns>264 private static long Pow(long x, long y)265 26

18、6 int i = 1;267 long X = x;268 if (y = 0)269 return 1;270 while (i < y)271 272 x = x*X;273 i+;274 275 return x;276 277 278 / <summary>279 / 280 / </summary>281 / <param name=x></param>282 / <returns></returns>283 private static string ToDec(string x)284 285 swi

19、tch (x)286 287 case A:288 return 10;289 case B:290 return 11;291 case C:292 return 12;293 case D:294 return 13;295 case E:296 return 14;297 case F:298 return 15;299 default:300 return x;301 302 303 304 / <summary>305 / 306 / </summary>307 / <param name=x></param>308 / <ret

20、urns></returns>309 private static string ToHex(string x)310 311 switch (x)312 313 case 10:314 return A;315 case 11:316 return B;317 case 12:318 return C;319 case 13:320 return D;321 case 14:322 return E;323 case 15:324 return F;325 default:326 return x;327 328 329 330 / <summary>331 /

21、 将16进制BYTE数组转换成16进制字符串332 / </summary>333 / <param name=bytes></param>334 / <returns></returns>335 public static string ToHexString(byte bytes) / 0xae00cf => AE00CF 336 337 string hexString = string.Empty;338 if (bytes != null)339 340 StringBuilder strB = new StringB

22、uilder();341 342 for (int i = 0; i < bytes.Length; i+)343 344 strB.Append(bytesi.ToString(X2);345 346 hexString = strB.ToString();347 348 return hexString;349 1 / <summary> 2 / 3 / </summary> 4 / <param name=bytes></param> 5 / <param name=iLength></param> 6 / &

23、lt;returns></returns> 7 public static string ToHexString(byte bytes, int iLength) / 0xae00cf => AE00CF 8 9 string hexString = string.Empty; 10 if (bytes != null) 11 12 StringBuilder strB = new StringBuilder(); 13 14 if (bytes.Length < iLength) 15 16 iLength = bytes.Length; 17 18 19 fo

24、r (int i = 0; i < iLength; i+) 20 21 strB.Append(bytesi.ToString(X2); 22 23 hexString = strB.ToString(); 24 25 return hexString; 26 27 28 / <summary> 29 / 将byte数组转换为16进制字符串 30 / </summary> 31 / <param name=bytes>要转换的数组</param> 32 / <param name=iStart>数组下标</param&g

25、t; 33 / <param name=iLength>长度</param> 34 / <returns></returns> 35 public static string ToHexString(byte bytes, int iStart, int iLength) / 0xae00cf => AE00CF 36 37 string hexString = string.Empty; 38 if (bytes != null) 39 40 StringBuilder strB = new StringBuilder(); 41 42

26、/缓冲区长度问题,需清空缓冲区 43 if (bytes.Length < (iLength + iStart) 44 45 iLength = bytes.Length; 46 47 48 for (int i = iStart; i < iLength + iStart; i+) 49 50 strB.Append(bytesi.ToString(X2); 51 52 hexString = strB.ToString(); 53 54 return hexString; 55 56 57 / <summary> 58 / 59 / </summary>

27、 60 / <param name=hexString></param> 61 / <param name=discarded></param> 62 / <returns></returns> 63 public static byte GetBytes(string hexString, out int discarded) 64 65 discarded = 0; 66 string newString = ; 67 char c; 68 / remove all none A-F, 0-9, characters

28、69 for (int i = 0; i < hexString.Length; i+) 70 71 c = hexStringi; 72 if (Uri.IsHexDigit(c) 73 newString += c; 74 else 75 discarded+; 76 77 / if odd number of characters, discard last character 78 if (newString.Length%2 != 0) 79 80 discarded+; 81 newString = newString.Substring(0, newString.Length - 1); 82 83 84 return HexToByte(newString); 85 86 87 / <summary> 88 / Converts from binary coded decimal to integer 89 / </summary> 90 / <param name=num></param&

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1