【发布时间】:2010-05-06 15:35:49
【问题描述】:
由于收集器数组被覆盖而不是附加,在我的 C# 应用程序中接收到的数据正在丢失。
char[] pUartData_c;
private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
try
{
pUartData_c = serialPort1.ReadExisting().ToCharArray();
bUartDataReady_c = true;
}
catch ( System.Exception ex )
{
MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
在此示例中,pUartData_c 在每次接收到新数据时都会被覆盖。在某些系统上,这不是问题,因为数据来得足够快。但是,在其他系统上,接收缓冲区中的数据并不完整。如何将接收到的数据附加到pUartData_c,而不是覆盖它。我正在使用 Microsoft Visual C# 2008 Express Edition。谢谢。
【问题讨论】: