彩票走势图

Aspose.Pdf使用教程:获取PDF文件中的所有附件

原创|使用教程|编辑:郝浩|2013-03-26 14:21:19.000|阅读 1077 次

概述:要从PDF文件中获取所有附件,需要查看文档对象的EmbeddedFiles集合。EmbeddedFiles集合包含所有的附件。下面将要给出使用Aspose.Pdf获取PDF文件中的所有附件的具体示例。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

相关链接:

要从PDF文件中获取所有附件,需要查看文档对象的EmbeddedFiles集合。EmbeddedFiles集合包含所有的附件。这个集合的每个元素代表一个FileSpecification对象。 每个EmbeddedFiles集合的循环计数器迭代将会返回一个FileSpecification对象。一旦这个对象是可用的,您可以检索附件的所有属性或附件本身。

》》》下载Aspose.Pdf试用版

下面是获取PDF文件中的所有附件的代码片段

C#

//open document
Document pdfDocument = new Document("input.pdf");
//get embedded files collection
EmbeddedFileCollection embeddedFiles = pdfDocument.EmbeddedFiles;
//get count of the embedded files
Console.WriteLine("Total files : {0}", embeddedFiles.Count);
//loop through the collection to get all the attachments
foreach (FileSpecification fileSpecification in embeddedFiles)
{
Console.WriteLine("Name: {0}", fileSpecification.Name);
Console.WriteLine("Description: {0}", 
fileSpecification.Description);
Console.WriteLine("Mime Type: {0}", fileSpecification.MIMEType);
//check if parameter object contains the parameters
if (fileSpecification.Params  != null)
{
  Console.WriteLine("CheckSum: {0}", 
  fileSpecification.Params.CheckSum);
  Console.WriteLine("Creation Date: {0}", 
  fileSpecification.Params.CreationDate);
  Console.WriteLine("Modification Date: {0}", 
  fileSpecification.Params.ModDate);
  Console.WriteLine("Size: {0}", fileSpecification.Params.Size);
}
//get the attachment and write to file or stream
byte[] fileContent = new byte[fileSpecification.Contents.Length];
fileSpecification.Contents.Read(fileContent, 0, 
fileContent.Length);
FileStream fileStream = new FileStream(fileSpecification.Name, 
FileMode.Create);
fileStream.Write(fileContent, 0, fileContent.Length);
fileStream.Close();
}
 
VB.NET
'open document
Dim pdfDocument As New Document("input.pdf")
'get embedded files collection
Dim embeddedFiles As EmbeddedFileCollection = pdfDocument.EmbeddedFiles
'get count of the embedded files
Console.WriteLine("Total files : {0}", embeddedFiles.Count)
'loop through the collection to get all the attachments
For Each fileSpecification As FileSpecification In embeddedFiles
Console.WriteLine("Name: {0}", fileSpecification.Name)
Console.WriteLine("Description: {0}", 
fileSpecification.Description)
Console.WriteLine("Mime Type: {0}", fileSpecification.MIMEType)
'check if parameter object contains the parameters
If fileSpecification.Params IsNot Nothing Then
  Console.WriteLine("CheckSum: {0}", 
  fileSpecification.Params.CheckSum)
  Console.WriteLine("Creation Date: {0}", 
  fileSpecification.Params.CreationDate)
  Console.WriteLine("Modification Date: {0}", 
  fileSpecification.Params.ModDate)
  Console.WriteLine("Size: {0}", fileSpecification.Params.Size)
End If
'get the attachment and write to file or stream
Dim fileContent(fileSpecification.Contents.Length - 1) As Byte
fileSpecification.Contents.Read(fileContent, 0, 
fileContent.Length)
Dim fileStream As New FileStream(fileSpecification.Name, 
FileMode.Create)
fileStream.Write(fileContent, 0, fileContent.Length)
fileStream.Close()
Next fileSpecification

标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn

文章转载自:慧都控件网

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP