SerialPort.Write() 和 SerialPort.WriteLine() 之间的区别


我在msdn上查看了SerialPort.Write()

和SerialPort.WriteLine()方法,并在一个简单的代码上尝试了它们,如下所示,但它们对我来说似乎非常相似。

有人可以用简单的术语解释主要区别是什么吗?

if (sendtoprint == true)
            {
                for (int i = 0; i < gcode.Count(); i++)
                {
                    port.Write(gcode[i]);
                }

if (sendtoprint == true)
            {
                for (int i = 0; i < gcode.Count(); i++)
                {
                    port.WriteLine(gcode[i]);
                }

if (sendtoprint == true)
            {
                for (int i = 0; i < gcode.Count(); i++)
                {
                    port.Write(gcode[i]+"rn");
                }

WriteLine 附加指定的文本和换行符。"仅写入"附加指定的文本。

例如:

Write("A");
Write("B");
Write("C");

将导致:ABC

然而:

WriteLine("A");
WriteLine("B");
WriteLine("C");

将导致:

A
B
C

来自 WriteLine 文档,就在顶部:

[WriteLine] 将指定的字符串换行符值写入输出缓冲区。

WriteLine 将NewLine字符添加到输出的末尾,而 Write 则不会。

因此SerialPort.Write("Hello")会将"Hello"输出到缓冲区。

SerialPort.WriteLine("Hello")会将类似"Hellon"的东西输出到缓冲区。(取决于当前换行符值)

我相信

唯一的区别是WriteLine方法添加了n,因此下一个数据流将打印在新行上。Console.Write()Console.WriteLine()也是如此。

最新更新