私はSERIALPORTWindows 10のアプリケーションでserialPort.ReadExisting()と同等の機能はありますか?
var response = serialPort.ReadExisting();
からの応答を読み取るために、次の方法を使用していた今、私は次のような方法
public static async Task<string> ReadAsync(CancellationToken cancellationToken,DataReader dataReaderObject)
{
string response = string.Empty;
try
{
var flag = false;
Task<UInt32> loadAsyncTask;
uint readBufferLength = 1024;
cancellationToken.ThrowIfCancellationRequested();
dataReaderObject.InputStreamOptions = InputStreamOptions.Partial;
loadAsyncTask = dataReaderObject.LoadAsync(readBufferLength).AsTask();
UInt32 bytesRead = await loadAsyncTask;
if (bytesRead > 0)
{
byte[] bytes = new byte[bytesRead];
dataReaderObject.ReadBytes(bytes);
//response = Encoding.ASCII.GetString(bytes);
// response = Convert.ToString(bytes);
response= ASCIIEncoding.ASCII.GetString(bytes);
}
}
catch (Exception ex)
{
response = string.Empty;
}
return response;
}
を使用して、Windows 10のアプリで同じことを実施しています私の以前のデスクトップアプリケーションでSERIALPORTクラスを使用していましたしかし、私は異なるエンコーディング形式で応答を得ているように見えます。 両方の応答をメモ帳++でコピーしたところ、次のような違いが見つかりました:
ここで何が問題になりますか? Windows 10アプリでserialPort.ReadExisting()と同等の機能はありますか?
SerialPort.ReadExisting Method()
従来のSerialPortコードを貼り付けることができれば助かります。あなたの送信は何バイトですか? – Jackie