我有一个损坏的.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;
}
但是我需要循环遍历文件而没有例外。如果特定页面上有任何错误,我必须跳过它并转到下一页。它不应该抛出异常。怎么做到这一点?
答案 0 :(得分:0)
我相信try-catch
块对您来说应该足够了。只需包装有问题的代码以捕获任何异常,无论如何都会继续循环。