ImapX Скачать вложение со специальным символом

Я использую ImapX в приложении C#.

Я сканирую почтовый ящик на наличие непрочитанных сообщений и загружаю вложение. В моем случае вложение - это файл XML, НО оно заканчивается символом SUB (к сожалению, поставщик не может изменить это... возможно, какая-то старая система UNIX, которая использует его как конец текстового потока или что-то в этом роде)

Код:

if (message.Attachments != null && message.Attachments.Any())
                    {
                        foreach (var attachment in message.Attachments)
                        {
                            attachment.Download();

                            string fileName = String.Format("{0}-{2}{1}", Path.GetFileNameWithoutExtension(attachment.FileName), Path.GetExtension(attachment.FileName), Guid.NewGuid());

                            attachment.Save(attachmentsPath, fileName);

                            string contents = File.ReadAllText(attachmentsPath + "\\" + fileName);


                            MessageBox.Show(String.Format("Attachment saved: {0}", fileName));
                        }
                    }

Заявление:

attachment.Save(attachmentsPath, fileName);

Выдает следующую ошибку:

Произошло необработанное исключение типа "System.FormatException" в mscorlib.dll. Дополнительная информация: Введенные данные не являются допустимой строкой Base-64, так как содержат неосновной 64-символ, более двух символов заполнения или недопустимый символ среди отступы персонажей.

Если это поможет:

attachmentsPath = "C:\\Latest"

fileName = "sig_20180704-ea5bfd7a-cd87-40a0-a84b-ccd9b59d496e.xml"

Я не могу понять, что я могу сделать, чтобы иметь это вложение, и я вынужден сделать операцию вручную.

0 ответов

Другие вопросы по тегам