SerialPort.ReadByte Metoda

Definicja

Synchronicznie odczytuje jeden bajt z SerialPort buforu wejściowego.Synchronously reads one byte from the SerialPort input buffer.

public:
 int ReadByte();
public int ReadByte ();
member this.ReadByte : unit -> int
Public Function ReadByte () As Integer

Zwraca

Int32

Bajt, Rzutowanie na Int32 lub-1, jeśli koniec strumienia został odczytany.The byte, cast to an Int32, or -1 if the end of the stream has been read.

Wyjątki

Podany port nie jest otwarty.The specified port is not open.

Operacja nie została ukończona przed upłynięciem limitu czasu.The operation did not complete before the time-out period ended.

-lub--or-

Nie odczytano żadnego bajtu.No byte was read.

Uwagi

Ta metoda odczytuje jeden bajt.This method reads one byte.

Należy zachować ostrożność podczas używania ReadByte i ReadChar razem.Use caution when using ReadByte and ReadChar together. Przełączenie między odczytywaniem bajtów i odczytem znaków może spowodować, że dodatkowe dane mają być odczytywane i/lub inne niezamierzone zachowanie.Switching between reading bytes and reading characters can cause extra data to be read and/or other unintended behavior. Jeśli zachodzi potrzeba przełączenia się między czytaniem tekstu i czytanie ze strumienia danych binarnych, należy wybrać protokół, który dokładnie definiuje granicę między tekstem i danymi binarnymi, taki jak ręczne odczytywanie bajtów i dekodowanie danych.If it is necessary to switch between reading text and reading binary data from the stream, select a protocol that carefully defines the boundary between text and binary data, such as manually reading bytes and decoding the data.

Uwaga

Ponieważ SerialPort Klasa buforuje dane, a strumień zawarty we właściwości nie jest BaseStream , dwie mogą powodować konflikty, ile bajtów jest dostępnych do odczytu.Because the SerialPort class buffers data, and the stream contained in the BaseStream property does not, the two might conflict about how many bytes are available to read. BytesToReadWłaściwość może wskazywać, że istnieją bajty do odczytu, ale te bajty mogą nie być dostępne dla strumienia zawartego we BaseStream właściwości, ponieważ zostały zbuforowane do SerialPort klasy.The BytesToRead property can indicate that there are bytes to read, but these bytes might not be accessible to the stream contained in the BaseStream property because they have been buffered to the SerialPort class.

Dotyczy