SerialPort.ReadExisting Метод

Определение

Считывает все сразу доступные байты на основе кодирования как в потоке, так и в входном буфере SerialPort объекта.

public:
 System::String ^ ReadExisting();
public string ReadExisting();
member this.ReadExisting : unit -> string
Public Function ReadExisting () As String

Возвращаемое значение

Содержимое потока и входного буфера SerialPort объекта.

Исключения

Указанный порт не открыт.

Комментарии

Этот метод возвращает содержимое потока и внутреннего буфера SerialPort объекта в виде строки. Этот метод не использует время ожидания. Обратите внимание, что этот метод может оставить конечные байты свинца во внутреннем буфере, что делает BytesToRead значение больше нуля.

Если необходимо переключиться между чтением текста и чтением двоичных данных из потока, выберите протокол, который тщательно определяет границу между текстовыми и двоичными данными, например вручную считывать байты и декодировать данные.

Note

Класс SerialPort буферизирует данные, но объект потока, содержащийся в свойстве SerialPort.BaseStream , не является. SerialPort Поэтому объект и объект потока могут отличаться по количеству байтов, доступных для чтения. При буферизации байтов к SerialPort объекту BytesToRead свойство включает эти байты в его значение, однако эти байты могут быть недоступны для потока, содержащегося в свойстве BaseStream .

Применяется к