十六进制到字符串的转换&使用字符串的一部分

本文关键字:字符串 一部分 转换 十六进制 | 更新日期: 2023-09-27 17:54:53

编辑:分裂现在正在工作,我正在c#中转换十六进制,而不是在arduino中(但如果有人知道arduino方面的转换,我想知道在arduino上将十六进制转换为字符串的解决方案)

我在arduino串行监视器上获得十六进制数据,现在我想将其转换回字符串(如何做到这一点?)我在c#中为串行客户端编写了一个代码,在那里我接收在COM端口上发送的数据&我只是想从我从手机发送的数据字符串,但无法从固件版本分离,发现了一些东西!文本(因为它们也在COM端口上),我想在RichTextBox中显示一切(这是工作),但如何只是我们为其他目的得到的字符串?来自串行客户端的数据是Found chip PN532 Firmware ver. 1.6 Waiting for Tap! Found Phone! 68656c6c2079656168

现在我只想在串行客户端使用这个十六进制,那么如何在c#中分离它?

十六进制到字符串的转换&使用字符串的一部分

要分割数据并获得最后一行,您可以简单地在行分隔符处分割数据并使用Linq获得最后一行;

var hex = 
  data.Split(new[] {''n',''r'}, StringSplitOptions.RemoveEmptyEntries).Last();

如果您的字符串由NewLine字符分隔,您可以使用Environment.NewLine分隔符分隔字符串。

试试这个:

var words = str.Split(Environment.NewLine);
var hexNum = words[words.Length-1];