Это никогда не может работать:
PdfWriter writer = PdfWriter.GetInstance(myDocument, new FileStream(filename1, FileMode.Create));
builder.Attachments.Add(filename1);
System.IO.File.Delete(filename1);
Вы создаете объект writer
, который записывает в файл filename1
. Этот поток ожидает байтов PDF, созданных с помощью iText.
Непонятно, что вы делаете в этой строке: builder.Attachments.Add(filename1);
Мы не знаем, что такое builder
, но я предполагаю, что это абсолютно не относится к вашему вопросу.
Однако: еще до того, как вы добавили любые байты PDF, а точнее: еще до того, как поток файлов будет закрыт, вы уже пытаетесь удалить файл filename1
. Это невозможно, потому что этот файл все еще используется: вы никогда не добавляли никакого PDF-контента, и вы его не закрывали.
Похожие вопросы:
Резюме:
Ошибка объясняет, что вам нужно, чтобы закрыть FileStream
, прежде чем удалить файл. Закройте этот поток!
Вы не можете показывать свои коды? – Raptor
'PdfWriter writer = PdfWriter.GetInstance (myDocument, новый FileStream (filename1, FileMode.Create)); builder.Attachments.Add (имя_файла1); System.IO.File.Delete (имя_файла1); ' –
Пожалуйста, отредактируйте свой вопрос и добавьте туда код ... –