转:C#读取PDF、TXT内容
//读取PDF内容
private void button2_Click(object sender, EventArgs e)
{
label3.Text = OnCreated("D:\\aa.pdf");
} private string OnCreated(string filepath)
{
try
{
string pdffilename = filepath;
PdfReader pdfReader = new PdfReader(pdffilename);
int numberOfPages = pdfReader.NumberOfPages;
string text = string.Empty; for (int i = 1; i <= numberOfPages; ++i)
{
iTextSharp.text.pdf.parser.ITextExtractionStrategy strategy = new iTextSharp.text.pdf.parser.SimpleTextExtractionStrategy();
text += iTextSharp.text.pdf.parser.PdfTextExtractor.GetTextFromPage(pdfReader, i, strategy);
}
pdfReader.Close(); return text;
}
catch (Exception ex)
{
StreamWriter wlog = File.AppendText(System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase + "\\mylog.log");
wlog.WriteLine("出错文件:" + "原因:" + ex.ToString());
wlog.Flush();
wlog.Close(); return null;
} //读取TXT
string text = System.IO.File.ReadAllText(path);//读取内容 path为文件路径
text = text.Replace("\n", string.Empty).Replace("\r", string.Empty);//去掉字符串里的\n \r符号
实例: //1. 生成一个PDF,将文本和图片添加到PDF里面。
//2. 从PDF文档中提取所有图片。
//3. 从PDF文档中提取所有文本。 //生成一个PDF文件 里面包含文本和图片
private void button2_Click(object sender, EventArgs e)
{
Spire.Pdf.PdfDocument doc = new Spire.Pdf.PdfDocument();
PdfPageBase page = doc.Pages.Add(); //添加文本
page.Canvas.DrawString("Hello!Welcome to my house!",
new Spire.Pdf.Graphics.PdfFont(PdfFontFamily.Helvetica, 20f),
new PdfSolidBrush(Color.Black), 10, 10);//中文汉字字符均不能正确生成 英文字母可以 //添加图片
Spire.Pdf.Graphics.PdfImage image = Spire.Pdf.Graphics.PdfImage.FromFile("ff.jpg");
float width = image.Width * 0.75f;
float height = image.Height * 0.75f;
float x = (page.Canvas.ClientSize.Width - width) / 2;
page.Canvas.DrawImage(image, x, 60, width, height); //Spire.Pdf.Graphics.PdfImage image2 = Spire.Pdf.Graphics.PdfImage.FromFile("image.jpg");
//width = image2.Width * 0.75f;
//height = image2.Height * 0.75f;
//page.Canvas.DrawImage(image2, x - 100, 220, width, height);
doc.SaveToFile("sample.pdf");
} //读取图片 获取图片个数 并把图片保存到本地
private void button1_Click(object sender, EventArgs e)
{
Spire.Pdf.PdfDocument doc = new Spire.Pdf.PdfDocument();
doc.LoadFromFile("sample.pdf");
IList<Image> images = new List<Image>();
foreach (PdfPageBase page in doc.Pages)
{
if (page.ExtractImages() != null)
{
foreach (Image image in page.ExtractImages())
{
images.Add(image);
}
}
}
doc.Close();
int index = 0;
int aa = images.Count;
label3.Text = aa.ToString();
foreach (Image image in images)
{
String imageFileName = String.Format("Image-{0}.png", index++);
image.Save(imageFileName, ImageFormat.Png);
}
} //读取文本
private void button3_Click(object sender, EventArgs e)
{
Spire.Pdf.PdfDocument doc = new Spire.Pdf.PdfDocument();
doc.LoadFromFile("sample.pdf"); StringBuilder buffer = new StringBuilder();
foreach (PdfPageBase page in doc.Pages)
{
buffer.Append(page.ExtractText());
}
doc.Close();
label1.Text = buffer.ToString();//在界面显示读取到的文本
//把读取到的文本写入TXT文件
//String fileName = "TextInPdf.txt";
//File.WriteAllText(fileName, buffer.ToString());
buffer = null;
}
原文:https://blog.csdn.net/wk125570/article/details/73794257?utm_source=copy
参考:http://www.cnblogs.com/Yesi/p/4203686.html
转:C#读取PDF、TXT内容的更多相关文章
- 深入学习python解析并读取PDF文件内容的方法
这篇文章主要学习了python解析并读取PDF文件内容的方法,包括对学习库的应用,python2.7和python3.6中python解析PDF文件内容库的更新,包括对pdfminer库的详细解释和应 ...
- .Net ->> iTextSharp工具读取PDF文本内容
分享一个开源的C#DLL,可以读取PDF文本内容. 地址:http://sourceforge.net/projects/itextsharp/ 这里还有相关的链接:http://www.codepr ...
- 读取pdf内容分页和全部
//读取pdf 全部内容public static String topdffile(String pdffile){ StringBuffer result = new StringBuffer() ...
- Python读取PDF内容
1,引言 晚上翻看<Python网络数据采集>这本书,看到读取PDF内容的代码,想起来前几天集搜客刚刚发布了一个抓取网页pdf内容的抓取规则,这个规则能够把pdf内容当成html来做网页抓 ...
- 2.编写IoDemo.java的Java应用程序,程序完成的功能是:首先读取text.txt文件内容,再通过键盘输入文件的名称为iodemo.txt,把text.txt的内容存入iodemo.txt
package zuoye; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; ...
- 深入学习Python解析并解密PDF文件内容的方法
前面学习了解析PDF文档,并写入文档的知识,那篇文章的名字为深入学习Python解析并读取PDF文件内容的方法. 链接如下:https://www.cnblogs.com/wj-1314/p/9429 ...
- robotframework 测试工具添加PDF文件内容匹配插件
robotframework 这个需要了解的请度娘.本文实现的是一个小功能.大体分为如下几个步骤 1)给定一个pdf文件. 2)读取pdf文件内容,并解析为文本内容. 3)通过给定的内容,比对pdf ...
- C# winfrom 写的一个搜索助手,可以按照标题和内容搜索,支持doc,xls,ppt,pdf,txt等格式的文件搜索
C# winfrom 写的一个搜索助手,可以按照标题和内容搜索,指定目录后,遍历搜索文件和子目,现在只写了支持.DOC.DOCX.XLS.XLSX.PPT.PPTX.PDF.HTML.HTM.TXT等 ...
- 【转】Python读取PDF文档,输出内容
Python3读取pdf文档,输出内容(txt) from urllib.request import urlopen from pdfminer.pdfinterp import PDFResour ...
随机推荐
- 洛谷P1880题解
题目 第一类区间DP模板题. 所谓第一类区间DP,是指合并型区间DP,状态转移方程一般形如 \(f_{i,j}=\max{f_{i,k}+f_{k+1,j}+cost_{i,j}}\) ,时间复杂度一 ...
- C++ //虚析构和纯虚析构
1 //虚析构和纯虚析构 2 3 #include <iostream> 4 #include <string> 5 using namespace std; 6 7 clas ...
- SaToken学习笔记-01
SaToken学习笔记-01 SaToken版本为1.18 如果有排版方面的错误,请查看:传送门 springboot集成 根据官网步骤maven导入依赖 <dependency> < ...
- SpringMVC学习04(数据处理及跳转)
4.数据处理及跳转 4.1结果跳转方式 4.1.1 ModelAndView 设置ModelAndView对象 , 根据view的名称 , 和视图解析器跳到指定的页面 . 页面 : {视图解析器前缀} ...
- netty系列之:自定义编码和解码器要注意的问题
目录 简介 自定义编码器和解码器的实现 ReplayingDecoder 总结 简介 在之前的系列文章中,我们提到了netty中的channel只接受ByteBuf类型的对象,如果不是ByteBuf对 ...
- 【笔记】求数据前n个主成分以及对高维数据映射为低维数据
求数据前n个主成分并进行高维数据映射为低维数据的操作 求数据前n个主成分 先前的将多个样本映射到一个轴上以求使其降维的操作,其中的样本点本身是二维的样本点,将其映射到新的轴上以后,还不是一维的数据,对 ...
- 温故知新,微软官方推荐的Visual Studio源代码管理之Git Ignore清单,开启新项目必备宝书
什么是Git Ignore清单 https://git-scm.com/docs/gitignore 简单来说,在Git进行源代码管理中,我们可以通过建立.gitignore来实现一个忽略的黑名单管理 ...
- 题解 P3942 将军令
题解 首先看到这题 \(k=1\) 时,就是一道 小胖守皇宫,那么由 \(k=1\) 联想到 \(k=2...20\) 发现可以树形 \(DP\) 但转移方程太难想,不太适合考场做. 考虑贪心: 对所 ...
- C++_COM 入门
COM即组件对象模型(Component Object Model)是一种跨应用和语言共享二进制代码的方法.COM明确指出二进制模块(DLLS和EXES)必须被编译成与指定的结构匹配,其定义的二进制标 ...
- xxx.pch(No such file or directory)
今天在写一个组件的Demo,发现把一个现象. 我把stdafx.h和stdafx.cpp从工程删除了(本地也被我删除了).后来又想把它加回去,就用新的工程生成这两个文件.然后拷贝过来,增加到工程. 但 ...