C# port.WriteLine(“AT”)和port.WriteLine之间是否有区别;和port.Write(";AT&x2B;Environment.NewLine);
想知道两者之间是否有区别。请解释。WriteLine() 默认的行终止符是一个值为回车的字符串 返回,后跟换行符(“\r\n”在C#中,或vbCrLf在Visual Studio中 基本的) 环境新线 对于非Unix平台,包含“\r\n”的字符串或字符串 包含Unix平台的“\n”C# port.WriteLine(“AT”)和port.WriteLine之间是否有区别;和port.Write(";AT&x2B;Environment.NewLine);,c#,at-command,C#,At Command,想知道两者之间是否有区别。请解释。WriteLine() 默认的行终止符是一个值为回车的字符串 返回,后跟换行符(“\r\n”在C#中,或vbCrLf在Visual Studio中 基本的) 环境新线 对于非Unix平台,包含“\r\n”的字符串或字符串 包含Unix平台的“\n” 结果相同,但代码不同 protected char[] CoreNewLine = new char[2] { '\r', '\n' }; public
结果相同,但代码不同
protected char[] CoreNewLine = new char[2]
{
'\r',
'\n'
};
public virtual void WriteLine(string value)
{
if (value == null)
{
this.WriteLine();
}
else
{
int length1 = value.Length;
int length2 = this.CoreNewLine.Length;
char[] chArray = new char[length1 + length2];
value.CopyTo(0, chArray, 0, length1);
if (length2 == 2)
{
chArray[length1] = this.CoreNewLine[0];
chArray[length1 + 1] = this.CoreNewLine[1];
}
else if (length2 == 1)
chArray[length1] = this.CoreNewLine[0];
else
Buffer.InternalBlockCopy((Array) this.CoreNewLine, 0, (Array) chArray, length1 * 2, length2 * 2);
this.Write(chArray, 0, length1 + length2);
}
}