字符串格式()中的间距
本文关键字:格式 字符串 | 更新日期: 2023-09-27 18:32:04
我想要字符串中单词之间的固定间距,类似于数据网格中的间距。
我试过了:
string item = String.Format("{0,-9}{1,-42}{2,-24}{3,0}", ++i, itemName, itemQuantity, totalItemPrice.ToString("#,##0.00") + System.Environment.NewLine);
但是由于itemName长度是可变的itemQuantity和totalItemPrice,因此不会保持其位置并被向前推。
该字符串随后被分配给富文本框。
您可以使用字符串。Format() 将内容排列起来,如果您使用的是等宽(固定间距)字体。
但是,您将无法使用字符串将内容与比例字体对齐。Format(),除非您只显示数字(即使在比例字体中,它们都具有相同的宽度)。
由于您使用的是 RTF,因此如果需要使用比例字体,则可以使用表格。
有关详细信息,请参阅此处:在 RTF 中使用表
但最简单的解决方案是使用等宽字体(如果可以的话)。
你可以这样做:
我刚刚修改了您使用值的方式,我可以将数据显示为数据网格。
string itemName = "phone";
int itemQuantity = 5, totalItemPrice=50;
string item = String.Format("{0,-2}{1,-10}{2,-5}{3,-5}", ++i, itemName, itemQuantity, totalItemPrice.ToString("#,##0.00")+System.Environment.NewLine);