Note

Access to this page requires authorization. You can try signing in or .

Access to this page requires authorization. You can try .

SerialPort.WriteLine(String) Method

Definition

Namespace:
System.IO.Ports
Assembly:
System.IO.Ports.dll
Assembly:
System.dll
Package:
System.IO.Ports v11.0.0-preview.5.26302.115
Source:
SerialPort.cs
Source:
SerialPort.cs
Source:
SerialPort.cs
Source:
SerialPort.cs

Important

Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

Writes the specified string and the NewLine value to the output buffer.

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

Parameters

text
String

The string to write to the output buffer.

Exceptions

The text parameter is null.

The specified port is not open.

The WriteLine(String) method could not write to the stream.

Examples

The following code example demonstrates the use of the SerialPort class to allow two users to chat from two separate computers connected by a null modem cable. This code example is part of a larger code example provided for the SerialPort class.

public static void Main()
{
 string name;
 string message;
 StringComparer stringComparer = StringComparer.OrdinalIgnoreCase;
 Thread readThread = new Thread(Read);

 // Create a new SerialPort object with default settings.
 _serialPort = new SerialPort();

 // Allow the user to set the appropriate properties.
 _serialPort.PortName = SetPortName(_serialPort.PortName);
 _serialPort.BaudRate = SetPortBaudRate(_serialPort.BaudRate);
 _serialPort.Parity = SetPortParity(_serialPort.Parity);
 _serialPort.DataBits = SetPortDataBits(_serialPort.DataBits);
 _serialPort.StopBits = SetPortStopBits(_serialPort.StopBits);
 _serialPort.Handshake = SetPortHandshake(_serialPort.Handshake);

 // Set the read/write timeouts
 _serialPort.ReadTimeout = 500;
 _serialPort.WriteTimeout = 500;

 _serialPort.Open();
 _continue = true;
 readThread.Start();

 Console.Write("Name: ");
 name = Console.ReadLine();

 Console.WriteLine("Type QUIT to exit");

 while (_continue)
 {
 message = Console.ReadLine();

 if (stringComparer.Equals("quit", message))
 {
 _continue = false;
 }
 else
 {
 _serialPort.WriteLine(
 String.Format("<{0}>: {1}", name, message));
 }
 }

 readThread.Join();
 _serialPort.Close();
}

public static void Read()
{
 while (_continue)
 {
 try
 {
 string message = _serialPort.ReadLine();
 Console.WriteLine(message);
 }
 catch (TimeoutException) { }
 }
}
Public Shared Sub Main()
 Dim name As String
 Dim message As String
 Dim stringComparer__1 As StringComparer = StringComparer.OrdinalIgnoreCase
 Dim readThread As New Thread(AddressOf Read)

 ' Create a new SerialPort object with default settings.
 _serialPort = New SerialPort()

 ' Allow the user to set the appropriate properties.
 _serialPort.PortName = SetPortName(_serialPort.PortName)
 _serialPort.BaudRate = SetPortBaudRate(_serialPort.BaudRate)
 _serialPort.Parity = SetPortParity(_serialPort.Parity)
 _serialPort.DataBits = SetPortDataBits(_serialPort.DataBits)
 _serialPort.StopBits = SetPortStopBits(_serialPort.StopBits)
 _serialPort.Handshake = SetPortHandshake(_serialPort.Handshake)

 ' Set the read/write timeouts
 _serialPort.ReadTimeout = 500
 _serialPort.WriteTimeout = 500

 _serialPort.Open()
 _continue = True
 readThread.Start()

 Console.Write("Name: ")
 name = Console.ReadLine()

 Console.WriteLine("Type QUIT to exit")

 While _continue
 message = Console.ReadLine()

 If stringComparer__1.Equals("quit", message) Then
 _continue = False
 Else
 _serialPort.WriteLine([String].Format("<{0}>: {1}", name, message))
 End If
 End While

 readThread.Join()
 _serialPort.Close()
End Sub

Public Shared Sub Read()
 While _continue
 Try
 Dim message As String = _serialPort.ReadLine()
 Console.WriteLine(message)
 Catch generatedExceptionName As TimeoutException
 End Try
 End While
End Sub

Remarks

If there are too many bytes in the input 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.

The written output includes the NewLine string.

Applies to


Feedback

Was this page helpful?