如何在VB.NET中附加PDF文件?

时间:2010-09-10 03:36:20

标签: vb.net

假设我有一个Windows窗体应用程序,其中我键入了员工的所有详细信息,我需要将他的简历(PDF格式)附加到他的详细信息中。当我点击保存按钮时,他输入的所有细节都可以存储到表格中。

  1. 如何在输入所有详细信息后点击按钮将PDF文件附加到用户可以执行的应用中?
  2. 当用户单击“保存”按钮时,如何保存用户附加的文件?
  3. 当我检索员工详细信息时,我希望显示和显示附加的文件。

2 个答案:

答案 0 :(得分:2)

使用OpenFileDialog允许用户浏览到要附加的PDF。存储所选PDF的文件路径。

当用户保存记录时,将用户选择的文件读入byte[],并将byte[]保存到数据库字段(可能是blob字段)中。 (See here

要重读它,请执行相反的操作。从数据库中获取byte[],并将其重新组合到一个文件中,将文件另存为临时PDF,然后启动一个进程加载它。 (See here

答案 1 :(得分:0)

这是一个简单的例子,没有错误检查,证明了Michael Shimmins的好建议。

Dim ofd As New OpenFileDialog()
'Set ofd settings'
If ofd.ShowDialog() = DialogResult.Cancel Then
    Return
End If
Dim pdfData As Byte() = File.ReadAllBytes(ofd.FileName)
'Save it to your database.'

但是,我建议您考虑将文件复制到文件服务器,而不是处理二进制数据和BLOB,如果可以的话。众所周知,BLOB会在某些平台上破坏数据库性能。 Here's一个参考。谷歌“blob数据库性能”更多。

以下是将文件复制到文件服务器的示例。

Dim newFileName As String = UniqueFileNameGeneratingFunction()
File.Copy(odf.FileName, newFileName)
'Save newFileName to your database as a string, and retrieve the file as needed'
'from the file server'