Доступ к закрытому файлу невозможен. iTextSharp - C#

Узнай цену своей работы

Формулировка задачи:

Доброго дня. Возникла проблема с файлом и я не могу понять в чём соль. Такая фишка мне уже попадалась несколько раз, но я её каким-то чудесным образом исправлял. Не могу понять в чем проблема, что я могу делать не так и что мне так аукается? студия показывает на строку с "doc.Close();" и ругается. Вот сам код:
Листинг программы
  1. string filePath = "Images.pdf";
  2. iTextSharp.text.Rectangle rec = new iTextSharp.text.Rectangle(PageSize.A4);
  3. Document doc = new Document(rec, 72, 36, 50, 50);
  4. BaseFont baseFont = BaseFont.CreateFont(@"..\..\arial.ttf", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
  5. iTextSharp.text.Font font = new iTextSharp.text.Font(baseFont, iTextSharp.text.Font.DEFAULTSIZE, iTextSharp.text.Font.NORMAL);
  6. try
  7. {
  8. using (FileStream fs = new FileStream(filePath, FileMode.Create, FileAccess.Write, FileShare.None))
  9. {
  10. PdfWriter writer = PdfWriter.GetInstance(doc, fs);
  11. PdfWriter.GetInstance(doc, fs);
  12. doc.Open();
  13. iTextSharp.text.Image img = iTextSharp.text.Image.GetInstance(@"../../img/airplane.jpg");
  14. img.ScaleToFit(120, 120);
  15. doc.Add(img);
  16. PdfContentByte cb = writer.DirectContent;
  17. cb.Rectangle(20f, 20f, doc.PageSize.Width - 40f, doc.PageSize.Height - 40f);
  18. cb.SetFontAndSize(baseFont, 10);//свой фонт
  19. cb.BeginText();
  20. cb.ShowTextAligned(PdfContentByte.ALIGN_CENTER, "**************", 300f, doc.PageSize.Height - 50f, 0);
  21. cb.ShowTextAligned(PdfContentByte.ALIGN_RIGHT, "*****************", 500f, doc.PageSize.Height - 50f, 0);
  22. cb.EndText();
  23. cb.MoveTo(20, doc.Top - 30f);
  24. cb.LineTo(400, doc.Top - 30f);
  25. doc.Close();
  26. Process.Start(filePath);
  27. }
  28. }
  29. catch (DocumentException ex)
  30. {
  31. Console.WriteLine(ex.Message);
  32. }
  33. catch (IOException ex)
  34. {
  35. Console.WriteLine(ex.Message);
  36. }
Что не так? Заранее спасибо.

Решение задачи: «Доступ к закрытому файлу невозможен. iTextSharp»

textual
Листинг программы
  1. PdfWriter.GetInstance(doc,  fs);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.545 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут