十进制到 ASCII 的转换 [英] Decimal to ASCII Conversion

查看:68
本文介绍了十进制到 ASCII 的转换的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何将十进制值转换为AScii,我已经尝试过

how can i convert decimal value to AScii , i have tried with

var charStrs = Convert.ToString(receivedEvent.tagData.can_Msg.data[3]) +
               Convert.ToString(receivedEvent.tagData.can_Msg.data[4]) + 
               Convert.ToString(receivedEvent.tagData.can_Msg.data[5]) + 
               Convert.ToString(receivedEvent.tagData.can_Msg.data[6]) + 
               Convert.ToString(receivedEvent.tagData.can_Msg.data[7]);
var asStr = String.Concat(charStrs.Select(cs => (char)Int32.Parse(cs, NumberStyles.HexNumber)));

我知道我的十进制数 = 56 49 50 48 48 48 53 56 50 56,当将其转换为 ascii 时,我将得到 8120005828;但我在 NumberStyles.HexNumber 中出现错误,它似乎不适用于 wpf ?

i know that my decimal number = 56 49 50 48 48 48 53 56 50 56 and when converting it to ascii i will get 8120005828;but i get error in NumberStyles.HexNumber its seems it does not work on wpf ?

推荐答案

我不太确定 data[3] 等中的值是什么,但使用来自 http://www.asciitable.com/

I'm not really sure what values are in data[3], etc. but with values from http://www.asciitable.com/

int[] values = { 56, 49, 50, 48, 48, 48, 53, 56, 50, 56 };
char[] chars = values.Select(x => (char)x).ToArray();
string str = new string(chars);
Console.WriteLine(str); // "8120005828"

您的部分问题可能是这些是十进制数,但您试图将它们解析为十六进制数.

Part of your problem might be that those are decimal numbers, but you're trying to parse them as hex numbers.

这篇关于十进制到 ASCII 的转换的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆