C# DataReceived事件的监控与日志记录

avatar
作者
筋斗云
阅读量:0

在C#中,可以通过DataReceived事件来监控数据的接收情况,并将接收到的数据记录到日志中。以下是一个简单的示例代码:

using System; using System.IO.Ports;  class Program {     static void Main()     {         SerialPort serialPort = new SerialPort("COM1", 9600);         serialPort.DataReceived += SerialPort_DataReceived;         serialPort.Open();          Console.WriteLine("Press any key to stop monitoring...");         Console.ReadKey();          serialPort.Close();     }      private static void SerialPort_DataReceived(object sender, SerialDataReceivedEventArgs e)     {         SerialPort serialPort = (SerialPort)sender;         string data = serialPort.ReadExisting();                  // 将接收到的数据记录到日志中         LogData(data);     }      private static void LogData(string data)     {         using (StreamWriter sw = new StreamWriter("log.txt", true))         {             sw.WriteLine($"[{DateTime.Now}] Received: {data}");         }     } } 

在上面的示例中,我们首先创建了一个SerialPort对象并打开串口,然后通过DataReceived事件来监控数据的接收情况。当数据被接收时,会调用SerialPort_DataReceived方法将数据记录到日志中。日志文件将会在程序运行目录生成一个log.txt文件,并将接收到的数据以时间戳的形式记录在文件中。

通过以上示例,我们可以实现对数据的接收情况进行监控,并将接收到的数据记录到日志中,方便后续的分析和处理。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!