我有一个损坏的 .pdf 文件。当我尝试打开文件时,它会在
PdfReader pdfReader = new PdfReader(fileName);
如果页面上有任何错误,则行。
你调用的对象是空的
完整代码:
public string ReadFile(string Filename)
{
string fileName = Server.MapPath(@"PDFFiles//" + Filename);
string pdfText = string.Empty;
if (File.Exists(fileName1))
{
try
{
// Exception on this line
PdfReader pdfReader = new PdfReader(fileName);
for (int i = 1; i <= pdfreader.NumberOfPages; i++)
{
ITextExtractionStrategy itextextStrat = new pdf.parser.SimpleTextExtractionStrategy();
PdfReader reader = new PdfReader(Filename);
String extractText = PdfTextExtractor.GetTextFromPage(reader, i, itextextStrat);
extractText = Encoding.UTF8.GetString(ASCIIEncoding.Convert(Encoding.Default, Encoding.UTF8, Encoding.Default.GetBytes(extractText)));
pdfText = pdfText + extractText;
reader.Close();
}
}
catch(Execption e)
{
}
}
return pdfText;
}
但是我需要毫无例外地遍历文件。如果特定页面上有任何错误,我必须跳过它并转到下一页。它不应该抛出异常。如何做到这一点?