嵌入式用串口传输,然后c#串口数据接收

qq_41832127 2018-05-22 03:20:44
有大佬知道的吗
try
{
// base64编码
//byte[] b = System.Text.Encoding.UTF8.GetBytes("");
// string base64jsons = Convert.ToBase64String(b);
// base64jsons = base64jsons.Replace("+", "%2B");

// 解码
int str = sp.ReadChar();
byte[] data = sp.ReadLine().Trim() != null ? Convert.FromBase64String(sp.ReadLine().Trim()) : new byte[0];
byte[] datare =Convert.FromBase64String(Convert.ToBase64String(data));
string jsonRes = System.Text.Encoding.UTF8.GetString(datare);
// byte[] data = Convert.FromBase64String(sp.ReadLine());//一次只能读取8个字节
// txtReceiveData.Text += Encoding.Unicode.GetString(data);
this.txtReceiveData.Text += data;
}
catch (Exception)
{
label6.Text = "读取数据时发生错误";
return;
}
接收的数据不是base-64数据
...全文
693 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
KJ_Wang 2018-05-26
  • 打赏
  • 举报
回复
直接用这个吧!没你想的那么复杂: string retMsg=sp.ReadExisting(); 后面就自己处理了。没那么难!我一直这么用!
巴士上的邂逅 2018-05-25
  • 打赏
  • 举报
回复
很明显你接收数据不对,两句代码,读了三遍 int str = sp.ReadChar(); byte[] data = sp.ReadLine().Trim() != null ? Convert.FromBase64String(sp.ReadLine().Trim()) : new byte[0];
昨天忆 2018-05-25
  • 打赏
  • 举报
回复
我也在学串口

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧