SerialPort.Write Метод

Определение

Записывает данные в выходной буфер последовательного порта.Writes data to the serial port output buffer.

Перегрузки

Write(String)

Записывает указанную строку в последовательный порт.Writes the specified string to the serial port.

Write(Byte[], Int32, Int32)

Записывает указанное число байтов в последовательный порт, используя данные из буфера.Writes a specified number of bytes to the serial port using data from a buffer.

Write(Char[], Int32, Int32)

Записывает указанное число символов в последовательный порт, используя данные из буфера.Writes a specified number of characters to the serial port using data from a buffer.

Write(String)

Записывает указанную строку в последовательный порт.Writes the specified string to the serial port.

public:
 void Write(System::String ^ str);
public void Write (string str);
member this.Write : string -> unit
Public Sub Write (str As String)

Параметры

text
String

Строка для вывода.The string for output.

Исключения

Указанный порт не открыт.The specified port is not open.

Свойство text имеет значение null.text is null.

Операция не была завершена до истечения срока ожидания.The operation did not complete before the time-out period ended.

Комментарии

Используйте этот метод, если требуется записать строку в качестве выходных данных в последовательный порт.Use this method when you want to write a string as output to a serial port.

Если в выходном Handshake буфере слишком много байтов и для XOnXOff SerialPort него задано значение, то объект может вызвать TimeoutException некоторое время, пока устройство будет готово к приему данных.If there are too many bytes in the output buffer and Handshake is set to XOnXOff then the SerialPort object may raise a TimeoutException while it waits for the device to be ready to accept more data.

По умолчанию SerialPort использует ASCIIEncoding для кодирования символов.By default, SerialPort uses ASCIIEncoding to encode the characters. ASCIIEncodingкодирует все символы, превышающие 127, как (char) 63 или "?".ASCIIEncoding encodes all characters greater than 127 as (char)63 or '?'. Для поддержки дополнительных символов в этом диапазоне задайте значение Encoding UTF8Encoding, UTF32Encodingили UnicodeEncoding.To support additional characters in that range, set Encoding to UTF8Encoding, UTF32Encoding, or UnicodeEncoding.

Write(Byte[], Int32, Int32)

Записывает указанное число байтов в последовательный порт, используя данные из буфера.Writes a specified number of bytes to the serial port using data from a buffer.

public:
 void Write(cli::array <System::Byte> ^ buffer, int offset, int count);
public void Write (byte[] buffer, int offset, int count);
member this.Write : byte[] * int * int -> unit
Public Sub Write (buffer As Byte(), offset As Integer, count As Integer)

Параметры

buffer
Byte[]

Массив байтов, данные из которого записываются в порт.The byte array that contains the data to write to the port.

offset
Int32

Отсчитываемое от нуля смещение в массиве buffer (в байтах), с которого начинается копирование байтов в порт.The zero-based byte offset in the buffer parameter at which to begin copying bytes to the port.

count
Int32

Количество записываемых байтов.The number of bytes to write.

Исключения

В качестве buffer передано null.The buffer passed is null.

Указанный порт не открыт.The specified port is not open.

Значение параметра offset или count выходит за пределы указанного массива buffer.The offset or count parameters are outside a valid region of the buffer being passed. Значение параметра offset или count меньше нуля.Either offset or count is less than zero.

offset плюс count превышает длину массива buffer.offset plus count is greater than the length of the buffer.

Операция не была завершена до истечения срока ожидания.The operation did not complete before the time-out period ended.

Комментарии

Используйте этот метод, если требуется записать в буфер байтов для создания выходных данных в последовательный порт.Use this method when you want to write to a byte buffer to create output to a serial port.

Если в выходном Handshake буфере слишком много байтов и для XOnXOff SerialPort него задано значение, то объект может вызвать TimeoutException некоторое время, пока устройство будет готово к приему данных.If there are too many bytes in the output buffer and Handshake is set to XOnXOff then the SerialPort object may raise a TimeoutException while it waits for the device to be ready to accept more data.

По умолчанию SerialPort использует ASCIIEncoding для кодирования символов.By default, SerialPort uses ASCIIEncoding to encode the characters. ASCIIEncodingкодирует все символы, превышающие 127, как (char) 63 или "?".ASCIIEncoding encodes all characters greater than 127 as (char)63 or '?'. Для поддержки дополнительных символов в этом диапазоне задайте значение Encoding UTF8Encoding, UTF32Encodingили UnicodeEncoding.To support additional characters in that range, set Encoding to UTF8Encoding, UTF32Encoding, or UnicodeEncoding.

Write(Char[], Int32, Int32)

Записывает указанное число символов в последовательный порт, используя данные из буфера.Writes a specified number of characters to the serial port using data from a buffer.

public:
 void Write(cli::array <char> ^ buffer, int offset, int count);
public void Write (char[] buffer, int offset, int count);
member this.Write : char[] * int * int -> unit
Public Sub Write (buffer As Char(), offset As Integer, count As Integer)

Параметры

buffer
Char[]

Массив символов, данные из которого записываются в порт.The character array that contains the data to write to the port.

offset
Int32

Отсчитываемое от нуля смещение в массиве buffer (в байтах), с которого начинается копирование байтов в порт.The zero-based byte offset in the buffer parameter at which to begin copying bytes to the port.

count
Int32

Количество символов для записи.The number of characters to write.

Исключения

В качестве buffer передано null.The buffer passed is null.

Указанный порт не открыт.The specified port is not open.

Значение параметра offset или count выходит за пределы указанного массива buffer.The offset or count parameters are outside a valid region of the buffer being passed. Значение параметра offset или count меньше нуля.Either offset or count is less than zero.

offset плюс count превышает длину массива buffer.offset plus count is greater than the length of the buffer.

Операция не была завершена до истечения срока ожидания.The operation did not complete before the time-out period ended.

Комментарии

Используйте этот метод, если требуется записать в символьный буфер для создания выходных данных в последовательный порт.Use this method when you want to write to a character buffer to create output to a serial port.

Если в выходном Handshake буфере слишком много байтов и для XOnXOff SerialPort него задано значение, то объект может вызвать TimeoutException некоторое время, пока устройство будет готово к приему данных.If there are too many bytes in the output buffer and Handshake is set to XOnXOff then the SerialPort object may raise a TimeoutException while it waits for the device to be ready to accept more data.

По умолчанию SerialPort использует ASCIIEncoding для кодирования символов.By default, SerialPort uses ASCIIEncoding to encode the characters. ASCIIEncodingкодирует все символы, превышающие 127, как (char) 63 или "?".ASCIIEncoding encodes all characters greater than 127 as (char)63 or '?'. Для поддержки дополнительных символов в этом диапазоне задайте значение Encoding UTF8Encoding, UTF32Encodingили UnicodeEncoding.To support additional characters in that range, set Encoding to UTF8Encoding, UTF32Encoding, or UnicodeEncoding.

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