我使用C#作为编程平台,使用iTextSharp
来阅读PDF内容。我已经使用下面的代码来阅读内容,但它似乎是每页读取的。
public string ReadPdfFile(object Filename)
{
string strText = string.Empty;
try
{
PdfReader reader = new PdfReader((string)Filename);
for (int page = 1; page <= reader.NumberOfPages; page++)
{
ITextExtractionStrategy its = new iTextSharp.text.pdf.parser.SimpleTextExtractionStrategy();
String s = PdfTextExtractor.GetTextFromPage(reader, page, its);
s = Encoding.UTF8.GetString(ASCIIEncoding.Convert(Encoding.Default, Encoding.UTF8, Encoding.Default.GetBytes(s)));
strText = strText + s;
}
reader.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
return strText;
}
任何人都可以帮助我如何编写每行读取pdf内容的代码?
答案 0 :(得分:14)
试试这个,使用LocationTextExtractionStrategy
代替SimpleTextExtractionStrategy
它会在返回的文本中添加换行符。然后,您可以使用strText.Split('\n')
将文本拆分为string[]
并按行进行消费。