【求助】C#如何将DataReceived缓存中的数据塞到SQL2005里去。(串口通信方向)
using System;using System.Collections.Generic;
using
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using
using System.Text.RegularExpressions;
namespace WindowsFormsApplication1
{
class SerialClass
{
public static SerialPort com = new SerialPort();
public static StringBuilder builder = new StringBuilder();//避免在事件处理方法中反复的创建,定义到外面。
public static string[] ports = SerialPort.GetPortNames();
/// <summary>
/// 串口初始化
/// </summary>
public static void SerialPortInit()
{
//初始化SerialPort对象
com.NewLine = "\r\n";
com.RtsEnable = true;//根据实际情况吧。
if (com.IsOpen) com.Close();
}
/// <summary>
/// 上位机接收函数
/// </summary>
/// <param name="n"> 接收数据字节长度</param>
public static byte[] com_DataReceived(int n)
{
byte[] buf = new byte[n];//声明一个临时数组存储当前来的串口数据
if (com.BytesToRead == n)
{
com.Read(buf, 0, n);//读取缓冲数据
builder.Remove(0, builder.Length);//清除字符串构造器的内容
//直接按ASCII规则转换成字符串
}
return buf;
}
此问题困扰我很久了。。。