C#串口接受数据如何插入数据库

我想把数据缓冲区的字节到达70字节(完整的信息)之后就把它用builder.ToString().Substring()方法插入数据库的各个列中,但是下面你的方法数据库中... 我想把数据缓冲区的字节到达70字节(完整的信息)之后就把它用 builder.ToString().Substring()方法插入数据库的各个列中,但是下面你的方法数据库中数据插不进去而且报操作超时,有没大神帮我改改。 展开
 我来答
332150481
2014-10-31 · 超过44用户采纳过TA的回答
知道小有建树答主
回答量:112
采纳率:0%
帮助的人:58.9万
展开全部
if (SerialPort.GetPortNames().Length == 0)
{
MessageBox.Show("没有检测到串口设备!");
}
else
{
port = GetAppConfig("ComPort");
SerialPortHelper.PortName = port;
SerialPortHelper.BaudRate = rate;
SerialPortHelper.StopBit = stop;
SerialPortHelper.RecieveDataEvent += new SerialPortHelper.RecieveData(RecieveData);
SerialPortHelper.Init();
SerialPortHelper.Start();
}
void RecieveData(byte[] data)
{
ASCIIEncoding encoding = new ASCIIEncoding();
string str = encoding.GetString(data);
if (!string.IsNullOrEmpty(str))
{
InsertData(str);
}
}
private void InsertData(string str)
{
try
{
lock (str)
{
if (str.Length < 32)
return;

//解析 并插入数扒带据库
...
}
}
catch (Exception ex)
{
define.msg.Text = "解析数据" + ex.ToString();
define.log.Write(define.msg);
}
}

这是我以前败团项目的代码,你看看,希望对春枯芦你有帮助
追问
你这个是ASCII码接受的啊 有木有16进制的解码判断长度的代码啊
追答
接收的是byte数组,自己转换,我转的是string这个根据自己需要
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式