C#如何把带小数点的字符串转化为字节数组,并且把每一位分割为单字节发送?

如题,例如我把“3.54”这个字符串转化为字节数组,通过串口发送时,将其变为“03 05 04”这三个字节发送出去,请问要怎么实现?
如图,我把numericUpDown控件里含两位小数的值化为字符串,现在要分割整数、第一位小数、第二位小数,变为三个字节发送给串口。例:numericUpDown里值为”3.54“时,变为”03 05 04“发送给串口。请问怎么实现

2个回答

string s = "3.45";
byte[] arr = s.Where(x => x >= '0' && x <= '9').Select(x => (byte)((int)x - (int)'0')).ToArray();

weixin_43910182
想学软件的小电工 回复caozhy: 又来麻烦你啦,可以帮我看看这个问题吗?十分感谢https://ask.csdn.net/questions/748118
8 个月之前 回复
weixin_43910182
想学软件的小电工 噢噢噢好,之前的问题解决了,现在遇到新的问题,想请您帮看看怎么改,链接:https://ask.csdn.net/questions/718142
9 个月之前 回复
caozhy
贵阳老马马善福专门编写代码的老马就是我! 回复weixin_43910182: 你重新开一个问题可以么,发在评论里比较乱。顺便说下,提问不需要悬赏,那个对勾是可以去掉的。
9 个月之前 回复
weixin_43910182
想学软件的小电工 回复weixin_43910182: 已经解决啦,我自己改了一下代码,现在只差求和校验没有做好了。十分感谢~不知道可不可以加一下您的QQ或者邮箱什么的,希望跟您学东西
9 个月之前 回复
weixin_43910182
想学软件的小电工 回复caozhy: 您好,在这个问题的基础上又遇到了一个问题。我想把处理好的这个数组加上帧头帧尾通过串口打包发送,我是初学者不知道这个问题怎么处理,请问可以教教我吗?代码如下: richTextBox1.Text = numericUpDown1.Value.ToString(); byte[] arr = richTextBox1.Text.Where(x => x >= '0' && x <= '9').Select(x => (byte)((int)x - (int)'0')).ToArray(); byte[] rf_buff = new byte[9]; //定义一个新的数组 rf_buff[0] = Convert.ToByte(AA); //帧头 rf_buff[1] = Convert.ToByte(03); rf_buff[2] = Convert.ToByte(01); rf_buff[3] = Convert.ToByte(arr); //把获取的数组加到这个数组里面 rf_buff[6] = Convert.ToByte(DD); //帧尾 rf_buff[7] = Convert.ToByte(A5); //求和校验,还没做 rf_buff[8] = Convert.ToByte(09); //字节长度 s.Write(rf_buff, 0, 9);
9 个月之前 回复
weixin_43910182
想学软件的小电工 回复weixin_43910182: 十分感谢!受教了~
9 个月之前 回复
caozhy
贵阳老马马善福专门编写代码的老马就是我! byte[] arr = s.Where(x => x >= '0' && x <= '9').Select(x => (byte)x).ToArray()
9 个月之前 回复
caozhy
贵阳老马马善福专门编写代码的老马就是我! ascii这样写 byte[] arr = s.Where(x => x >= '0' && x <= '9').ToArray()
9 个月之前 回复
weixin_43910182
想学软件的小电工 回复: 代码如下: richTextBox1.Text = numericUpDown2.Value.ToString(); byte[] arr = richTextBox1.Text.Where(x => x >= '0' && x <= '9').Select(x => (byte)((int)x - (int)'0')).ToArray(); s.Write(arr,0,3);
9 个月之前 回复
weixin_43910182
想学软件的小电工 还有一个问题,就是在这样情况下,只有以HEX形式接收数据才能得到“03 04 05”,以ASCII形式就会乱码。而我并没有把字符串转为十六进制发送啊,这是什么原因呢?
9 个月之前 回复
weixin_43910182
想学软件的小电工 谢谢谢谢,非常感谢!我试了一下可以输出了
9 个月之前 回复

图片说明
如图,现在的代码是这样的,要怎么解决上述问题呢?


Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
如何把十六进制字符串转化为字节数组?
例如有一AnsiString str="1A233334D6"(str里存放的实际是去完空格的16进制数)如何把它转化为等值的0x1A,0x23,0x33,0x34,0xD6这样的byte[]数组啊 ,求大侠指教,谢谢!
如何把一个字节数组转化为字符串
如何把一个字节数组转化为字符串rnrn
c#把字符串分割为多个字符串
//把字符串分割成字符串数组,关键字Split public static void sqlit() { string sqlits = "asdfghj"; //以"s"为中间把字符串分割,可同时以多个字符串为中间。 string[] s1 = sqlits.Split('s');
如何把字节数组转换为字符串?
如何把字节数组转换为字符串,字节数组里不一定是ascii码rn
java 把文件转化为字节数组
java 中如何把文件(file)转化字节数组呢? 方式一: /** * 文件转换为二进制数组 * * @param file 文件对象 * @return * @throws IOException */ public static byte[] fileTobytes(final File file) t...
C# 把十六进制的字符串转化为Color
 /// &amp;lt;summary&amp;gt;     /// 把十六进制的字符串转化为Color     /// &amp;lt;/summary&amp;gt;     /// &amp;lt;param name=&quot;strHex&quot;&amp;gt;没有#号键,因为后台不加&amp;lt;/param&amp;gt;     /// &amp;lt;returns&amp;gt;&amp;lt;/returns&amp;gt;     public static Color
把字符串转化为日期
这个字符串convert.todatetime("2007-01-02")转换成日期后保存到数据库rn怎么变成了"2007-1-2"这种形式,我想保存到数据库是"2007-01-02"形式的该什么办
把字符串转化为表达式
本例子包含Interop.MSScriptControl.dll 将一串合法的字符串,转换为数学表达式,并计算出结果。
把字符串转化为整型
函数/方法是什么
把字符串转化为时间格式
把字符串转化为时间格式,有很多人要求吧 ”1988-01-10“变为时间类型的1988-01-10,这里有代码,其实很简单
把数字转化为字符串
如何将一个float类型的数转化为字符串输出。
怎么把字节数组转化为字符串效率最高
RTrnrnnew String(byte[] a) 这个效率太低,有没有其他的好办法
把时间格式转化为小数点格式 急用!!!!!!!!!!!!!
yyyy/MM/dd HH:mm:ss 转化为一位小数
一道华为公司的面试题目.怎么把字符串转化为字节数组?
一道华为公司的面试题目.怎么把字符串转化为字节数组?rnrnrn比如 CString *str="ABCD";(长度不确定的字符串)  (VC中)rn 或rn char *str="ABCD";(长度不确定的字符串)  (C语言中)rn rnrn变为 byte DATA[4]; (要求字节数组长度应和字符串一致)rn DATA[0]='A';rn DATA[1]='B';rn DATA[2]='C';rn DATA[3]='D';
字符串转化为16进制字节数组??
我想从一个文本框中接收几个字符串,且用空格隔开,比如:“12 34 3B 5C”,怎样把这些字符串转化为字节数组啊??rn求具体代码!谢谢!rn
怎么把一个带小数点的数转化为百分比的形式?
百分比保留小数点后两位rn比如0.63875转化为百分比的新式为63.88%(四舍五入,不四舍五入也可以,就是63.87%也行)rn1表示为100%,没有比1大的,也没有比0小的,0表示为0%。
如何把CString字符串转化为整数
我在保存文件时,把一串串的坐标(12.3454,2.4455,2.5577),(x2,y2,z2),(x3,y3,z3),(x4,y4,z4),。。。转化为CStringArray 类,"(12.3454,2.4455,2.5577)","(x1,y1,z1)"...,一串一串的保存到文件里,现在要把他读出,还原成一个个坐标,我该如何做?
如何把数字转化为字符串
例如10000rn什么函数转换为“10000”呢
如何把字符串转化为变量
比方"a"和字符串"1"合并为变量a1,如何实现?
如何把字符串“3sf”转化为数字
set rs_ksh= open_rs(conn,"select max(ksh) from SchoolDepartment ") '找到一个科室最大号rn ksh_max=cint(rs_ksh(0)) +1rn for i=1 to ksh_lengh - len(ksh_max)rn ksh_max="0"&ksh_maxrn nextrn end if rn如果为”001“没问题。rn当科室号为“00a"时会出错,如何解决
如何把文本(字符串)转化为变量
各位大神,请先首小弟一拜!rnrn问题是这样的,首先我用正则表达式 提取出cc *里面*的内容rnrn[code=php]preg_match_all('cc?([\s\S]*?)', $content, $matches)[/code]rnrn*的内容是这种格式的rnrn[code=php]1=“*” 2=“*” 3=“*”[/code]rn其中* 指的是参数,前面的数字是变量名,当然,以此类推,可以设置无数个参数rnrn我要做的是,把类似 1=“*”rn这样的文本换成 可读变量 如$1的内容应该是 1=“*” *的内容rnrn小弟先谢谢了,高手勿喷rnrn
如何把字符串转化为CTime格式?
如何把字符串转化为CTime格式?rn比如我得字符串是 "2002-09-12 12:12:12",如何转化?
如何把字符串转化为表达式啊!
我想在文本框里输入一个函数表达式,然后计算X取不同值时的函数值,因为表达式是不固定的,所以不可以直接在程序里写函数.请问该如何转换呢,记得有个什么脚本的,可惜忘记了.
如何把一个字符数组转化为字符串
unsigned char data[16];rn for(int i=0;i<16;i++)rn rn data[i]=i;rn rn rn CString str;rn str.Format("%d",data);rn MessageBox(str);rn rn这样不知对否?
如何把字符串转化为十六进制
有一个CString类型的字符串 CString str="8FD9662F6D4B8BD5" 分别是“这是测试”四个字的unicode码rn我现在提取每个字的unicode码,做以下赋值rn wchar_t wch[4];rn wch[0] = 0x8FD9;rn wch[1] = 0x662F;rn wch[2] = 0x6D4B;rn wch[3] = 0x8BD5;rn请问我怎么把字符串“8FD9”变成16进制的 0x8FD9后赋值给wch[0]rnrn[color=#FF0000]请回答重点,不要回复我如何提取字符串,分不够的话我再加,谢谢[/color]
如何把以下数字转化为字符串?
如何把 8个数字 1 转化为字符串"11111111",但是如果我第N个为数字0时,我可以更换它,如第2个为0,则字符串变为"10111111",rn希望给个通用的方法,像JAVA的方法一样,可以通用.rnrn我传入值的排列序号,和值本身,就可以这样转化.rn希望提供源代码 谢谢好心的朋友.
如何把byte数组转化为字符串?
搞不定了:(
如何把字符串转化为GBK编码值
在delphi7下,把字符串转化为GBK编码值。rn 主要是用于URL的编码。
如何把整数转化为相应的字符串?
比如整数123,怎样转换为字符串"123"?
Java如何把字符串转化为输入流
try{ InputStream myIn=new ByteArrayInputStream(txt.getBytes()); //将System.in转化为面向字符的流 InputStreamReader ir = new InputStreamReader(myIn); in = new BufferedReader(ir);//为输入流提供缓冲区 while ((s = i...
如何把记录转化为一字符串?
rn 获奖类别 时间 学号rnrn 优秀三好学生 2002-09-09 98111055 rn 优秀三好学生 2001-09-09 98111055 rn 优秀三好学生 2000-09-09 98111055 rn 优秀三好学生 1999-09-09 98111055 rn 优秀学生干部 1999-09-09 98111055 rn 优秀学生干部 1998-09-09 98111055 rn 学生积极分子 1999-09-09 98111055 rn 英语统考成绩优异奖 1999-09-09 98111055 rnrn...rnrn问题1:rn欲返回记录格式为rn 学号 获奖类别rn 98111055 优秀三好学生,学生积极分子,英语统考成绩优异奖rnrn问题2:rn欲返回记录格式为rn 学号 获奖类别rn 98111055 优秀三好学生(4),学生积极分子(1),英语统考成绩优异奖(1)rn rn。。rn其中括号内为该奖获得的次数。rnrn这样的sql语句如何如何写?thanks.
如何把字符串转化为数值?急。。。。。。。。。。。。。。
如何把字符串转化为数值?急。。。。。。。。。。。。。。
如何把一个HTMLElement转化为字符串?
如下:rn rn aarnrnrn想通过不断循环获取div1的children,每次把一个child转化为字符串,比如第一次循环获取到了table标记,就把它转化为[table]aa[/table],第2次就获取到tr标记了,再转化为[table][tr]aa[/tr][/table],第3次就转化td标记了,依次类推,最终将把这些标记转化完,div1就不再有children了,循环终止。rnrn我使用的方法是,每次获取innerHTML,再在2端加上转化后的tagName,实现代码如下:rntag.outerHTML = "[" + tag.tagName + "]" + tag.innerHTML + "[/" + tag.tagName + "]"rnrn然而实际操作过程中发现,table标记这样做不行,其它标记没有问题,原因未知。rnrn如何达到我的要求?在线等高手指教。
如何把数值转化为字符串对象?
不知道该怎么做,请求帮助:rn如:从x = 10.00; y = 23.45;rn 如何才能实现CString coorString = "10.00,23.45";
如何把数字字符串转化为整数?
如题。rn
如何把字符串转化为ENUM类型?
我的枚举:rnrn public enum Subjectrn None = 0,rn Logon = 1,rn Logoff = 2,rn Ready = 3,rn rnrn如何把字符串"Logon"转化成枚举型?
如何把字符串转化为十六进制?
如何把字符串转化为十六进制?
C++把字符串分割为字符串数组
C++如何把一个字符串分割到字符串数组里呢? 为了让读者轻松了解,我们用一个for循环来实现,不借助strtok()以及其他函数;(先上代码) #include &amp;lt;iostream&amp;gt; #include &amp;lt;string&amp;gt; using namespace std; string w,k[1000002]; int main() { getline(cin, w);...
把C#转化为json格式
第一种:var __CURRENTDATA = eval('(' + __CURRENTDATA + ')');//错误: 缺少 ')'rnrn__CURRENTDATA:是我用C#拼接的方法得出来的数据rnrn 第二种:var __CURRENTDATA = new Function(__CURRENTDATA)();//错误: 缺少 ';'rnrn现在要把他转换为json格式,我在网上查好像是这两种方式转换的,到我这怎么会报错呢?rn
字符串如何转化为字节数组?谢谢
想把一个名为a.txt里的内容转化为字节数组 怎么转化谢谢
相关热词 c++和c#哪个就业率高 c# 批量动态创建控件 c# 模块和程序集的区别 c# gmap 截图 c# 验证码图片生成类 c# 再次尝试 连接失败 c#开发编写规范 c# 压缩图片好麻烦 c#计算数组中的平均值 c#获取路由参数