在C#中使用PadRight的文本电子邮件的填充问题

时间:2010-10-22 20:08:23

标签: c# .net email formatting padding

我有一个关于使用C#.net对文本电子邮件进行编码的问题,因为我使用的是简单的ASCII,但在使用填充格式化用户的数据时,虽然我在检查NotePad ++中的行时数据没有排队它们的性格完全相同。下面是一些代码,谁能告诉我我做错了什么?

StringBuilder oSB = new StringBuilder(); oSB.AppendLine(EmailLine(“Amount”,oTrans.PaymentAmount.ToString())); oSB.AppendLine(EmailLine(“付款方式”,oTrans.CardType)); 私有静态字符串EmailLine(字符串FieldLabel,字符串FieldVal) {      返回PadLabel(FieldLabel)+ FieldVal; } 私有静态字符串PadLabel(字符串FieldLabel) {      返回FieldLabel.PadRight(40,char.Parse(“”))+“:”; }

我的输出如下:

金额:100.00

付款方式:签证

1 个答案:

答案 0 :(得分:1)

它们是否排队将取决于用于显示电子邮件的字体。这是电子邮件客户端的设置。例如,这是我在Outlook中设置它的地方:

alt text

尝试将Notepad ++中的字体更改为Times new Roman和Courier,您会看到它们的排列方式不同。

如果您将其作为计划文本邮件发送,则无法控制用户的字体。您可以做的最好表示“使用___字体进行最佳读取”或将其格式化为HTML,您可以在其中进行控制。

其他选项包括将其输出到PDF文件或图像(再次提供更多控制权的地方)。