Stringbuilder AppendLine 添加了太多新行
Stringbuilder AppendLine is adding one new line too much
我正在尝试在 Visual Studio 中使用 C# 生成二维码...
对于每个大标签,我用 childTags 创建了一个 class...我覆盖了 ToString() 函数以使用 Stringbuilder 并将每个标签添加到它
class QRCdtrInf
{
public string IBAN;
public QRCdtr Cdtr;
public override string ToString()
{
var sb = new StringBuilder();
sb.AppendLine(IBAN);
sb.Append(Cdtr.ToString());
return sb.ToString();
}
}
最后有一个 class QRData,它接受所有 类 ToString 并附加它..
class QRData
{
public QRHeader Header;
public QRCdtrInf CdtrInf;
public QRUltmtCdtr UltmtCdtr;
public QRCcyAmt CcyAmt;
public QRUltmtDbtr UltmtDbtr;
public QRRmtInf RmtInf;
public QRAltPmtInf AltPmtInf;
public override string ToString()
{
var sb = new StringBuilder();
sb.Append(Header.ToString());
sb.Append(CdtrInf.ToString());
sb.Append(UltmtCdtr.ToString());
sb.Append(CcyAmt.ToString());
sb.Append(UltmtDbtr.ToString());
sb.Append(RmtInf.ToString());
return sb.ToString();
}
}
然后我将它发送到 Encoding,当我扫描它时,我总是得到一行太多的每一行..
我什至试过 Append(Enviroment.NewLine)...
我尝试仅使用 Append... 然后将所有内容写在一行中。
所以要么我将所有值都放在一行中,要么在每个值之间有一个 CRLF 太多
编辑:
所以现在使用 AppendLine 的输出是这样的:
1
Empty Line
2
Empty Line
3
Empty Line
但我想要这样:
1
2
3
使用行分隔符("\n")
sb.Append(data.toString + "\n");
我正在尝试在 Visual Studio 中使用 C# 生成二维码... 对于每个大标签,我用 childTags 创建了一个 class...我覆盖了 ToString() 函数以使用 Stringbuilder 并将每个标签添加到它
class QRCdtrInf
{
public string IBAN;
public QRCdtr Cdtr;
public override string ToString()
{
var sb = new StringBuilder();
sb.AppendLine(IBAN);
sb.Append(Cdtr.ToString());
return sb.ToString();
}
}
最后有一个 class QRData,它接受所有 类 ToString 并附加它..
class QRData
{
public QRHeader Header;
public QRCdtrInf CdtrInf;
public QRUltmtCdtr UltmtCdtr;
public QRCcyAmt CcyAmt;
public QRUltmtDbtr UltmtDbtr;
public QRRmtInf RmtInf;
public QRAltPmtInf AltPmtInf;
public override string ToString()
{
var sb = new StringBuilder();
sb.Append(Header.ToString());
sb.Append(CdtrInf.ToString());
sb.Append(UltmtCdtr.ToString());
sb.Append(CcyAmt.ToString());
sb.Append(UltmtDbtr.ToString());
sb.Append(RmtInf.ToString());
return sb.ToString();
}
}
然后我将它发送到 Encoding,当我扫描它时,我总是得到一行太多的每一行.. 我什至试过 Append(Enviroment.NewLine)... 我尝试仅使用 Append... 然后将所有内容写在一行中。 所以要么我将所有值都放在一行中,要么在每个值之间有一个 CRLF 太多
编辑: 所以现在使用 AppendLine 的输出是这样的:
1
Empty Line
2
Empty Line
3
Empty Line
但我想要这样:
1
2
3
使用行分隔符("\n")
sb.Append(data.toString + "\n");