сначала я попробовал использовать объект StreamReader следующим образом:
Код: Выделить всё
public async Task Transmit ()
{
IPAddress ipAddress = new IPAddress(new byte[] { 192, 168, 0, 21 });
TcpClient client = new TcpClient();
await client.ConnectAsync(ipAddress, 5555); // Connect
NetworkStream networkStream = client.GetStream();
StreamWriter writer = new StreamWriter(networkStream);
StreamReader reader = new StreamReader(networkStream);
writer.AutoFlush = true;
//SEND Command to Machine
await writer.WriteLineAsync("WAV:READ?" + "\n");
//Receive Data from Machine
string respond= await reader.ReadLineAsync();
return respond;
}
Код: Выделить всё
byte[] RawData = System.Text.Encoding.ASCII.GetBytes(data);Код: Выделить всё
//...
while (true)
{
if (networkStream.DataAvailable)
{
byte b = binaryReader.ReadByte();
//.. do grabbing data and find EOP by dispatching data packet
//.. size could varies
//.. if(EOP)
//.. {
//.. break;
//.. }
}
}
также, что касается моего проекта, важно поддерживать метод async, который, похоже, не поддерживается бинарным Reader ;
мой код работает под .NetFramework 4.6.
есть ли у кого-нибудь предложения, которые помогут мне решить мою проблему, пожалуйста?
Подробнее здесь: https://stackoverflow.com/questions/790 ... eam-object