2010-10-22 5 views
0

J'ai une question concernant l'encodage pour les messages texte en utilisant C#. Net parce que j'ai le mien en ASCII simple mais en faisant padding pour formater un recipt à l'utilisateur les données ne sont pas alignées Bien que lorsque je vérifie les lignes dans NotePad ++, elles correspondent exactement au même nombre de caractères. Voici un peu de code, quelqu'un peut-il me dire ce que je fais mal?Problème de remplissage pour le courrier électronique en utilisant PadRight en C#

StringBuilder oSB = new StringBuilder(); oSB.AppendLine (EmailLine ("Amount", oTrans.PaymentAmount.ToString())); oSB.AppendLine (EmailLine ("Méthode de paiement", oTrans.CardType)); chaîne statique privée EmailLine (chaîne FieldLabel, chaîne FieldVal) { return PadLabel (FieldLabel) + FieldVal; Chaîne statique privée PadLabel (string FieldLabel) }

Ma sortie ressemble à ceci:

Montant: 100,00

Mode de paiement: VISA

Répondre

1

Qu'ils en ligne ou pas dépendra de la police utilisée pour afficher l'e-mail. C'est un paramètre sur le client de messagerie. Par exemple, voici où je le mettre dans Outlook:

alt text

Essayez de changer la police dans Notepad ++ à Times New Roman et Courier et vous verrez qu'ils alignent différemment.

Vous n'avez aucun contrôle sur la police de l'utilisateur si vous l'envoyez en tant que courrier textuel. Le mieux que vous puissiez faire indique "Meilleure lecture avec ___ police" ou formatez-le en HTML où vous avez un certain contrôle.

D'autres options incluent la sortie de ceci dans un fichier PDF, ou une image (encore là où vous avez plus de contrôle).

Questions connexes