Microsoft Outlook 2002 и выше удаляет «дополнительные разрывы строк» из текстовых сообщений по умолчанию (kb308319) . То есть Outlook, похоже, просто игнорирует последовательности перевода строки и / или возврата каретки в текстовых сообщениях, выполняя все строки вместе.
Это может вызвать проблемы, если вы пытаетесь написать код, который автоматически сгенерирует сообщение электронной почты, которое будет прочитано кем-то с помощью Outlook.
Например, предположим, что для ясности вы хотите предоставить отдельные фрагменты информации в каждой строке, например:
Транзакция требует внимания!
Дата публикации: 30.01.2009
Сумма: 12 222,06 доллара США
TransID: 8gk288g229g2kg89
Индекс: 91543
Ваш получатель Outlook увидит всю информацию, собранную вместе, следующим образом:
Сделка требует внимания! Дата публикации: 30.01.2009 Сумма: 12 222,06 $ TransID: 8gk288g229g2kg89 ZipCode: 91543
Кажется, нет простого решения. Альтернативы:
- Вы можете указать два набора разрывов строк между каждой строкой. Это мешает Outlook объединить строки в одну строку, но затем отображает дополнительную пустую строку между каждой строкой (создавая противоположную проблему). Под «поставкой двух наборов разрывов строк» я имею в виду, что вы должны использовать «\ r \ n \ r \ n» или «\ r \ r» или «\ n \ n», но не «\ r \ n» или «\ n». \ г».
- Вы можете поставить два пробела в начале каждой строки в теле вашего сообщения электронной почты. Это позволяет избежать введения дополнительной пустой строки между каждой строкой. Но это работает лучше всего, если каждая строка в вашем сообщении довольно короткая, потому что пользователь может предварительно просматривать текст в очень узком окне Outlook, которое переносит конец каждой строки на первую позицию на следующей строке, где это не будет выровняйте свои строки с двумя пробелами. Эта стратегия использовалась для некоторых новостных рассылок .
- Вы можете отказаться от использования простого текстового формата и использовать формат html.