ai怎么读取表格

如题所述

读取显示PDF需要借助PDF库,国内Spire.PDF可以读取PDF内容,包括文本,图片以及表格,你可以通过NuGet搜索安装

读取文本内容:

using Spire.Pdf;

using Spire.Pdf.Texts;

using System.IO;

using System.Text;

namespace ExtractText

{

internal class Program

{

static void Main(string[] args)

{

//创建一个 PdfDocument 对象

PdfDocument doc = new PdfDocument();

//加载PDF文件

doc.LoadFromFile("AI数字人.pdf");

StringBuilder sb = new StringBuilder();

foreach (PdfPageBase page in doc.Pages)

{

//创建一个PdfTextExtractot 对象

PdfTextExtractor textExtractor = new PdfTextExtractor(page);

//创建一个 PdfTextExtractOptions 对象

PdfTextExtractOptions extractOptions = new PdfTextExtractOptions();

//将 isExtractAllText 设置为true

extractOptions.IsExtractAllText = true;

//从页面中提取文本

sb.AppendLine(textExtractor.ExtractText(extractOptions));

}

//将提取的文本写入 TXT 文件

File.WriteAllText("提取指定页面文本.txt", sb.ToString());

}

}

}

读取表格内容:

using Spire.Pdf;

using Spire.Pdf.Utilities;

using System.IO;

using System.Text;

namespace ExtractTable{
class Program
{
static void Main(string[] args)
{
//实例化PdfDocument类的对象
PdfDocument pdf = new PdfDocument();

//加载PDF文档
pdf.LoadFromFile("sample.pdf");

//创建StringBuilder类的对象
StringBuilder builder = new StringBuilder();

//实例化PdfTableExtractor类的对象
PdfTableExtractor extractor = new PdfTableExtractor(pdf);

//声明PdfTable类的表格数组
PdfTable[] tableLists;

//遍历PDF页面
for (int pageIndex = 0; pageIndex < pdf.Pages.Count; pageIndex++)
{
//从页面提取表格
tableLists = extractor.ExtractTable(pageIndex);

//判断表格列表是否为空
if (tableLists != null && tableLists.Length > 0)
{
//遍历表格
foreach (PdfTable table in tableLists)
{
//获取表格中的行和列数
int row = table.GetRowCount();
int column = table.GetColumnCount();

//遍历表格行和列
for (int i = 0; i < row; i++)
{
for (int j = 0; j < column; j++)
{
//获取行和列中的文本
string text = table.GetText(i, j);

//写入文本到StringBuilder容器
builder.Append(text + " ");
}
builder.Append("\r\n");
}
}
}
}

//保存提取的表格内容为.txt文档
File.WriteAllText("ExtractedTable.txt", builder.ToString());
}
}

}

温馨提示:答案为网友推荐,仅供参考
相似回答