在我的 Windows 应用程序中,我的数据库中存储了一个 PDF 文件。问题是,当我尝试打开 PDF 文件时,出现错误
Adobe Reader 无法打开“tem1.pdf”,因为它不是受支持的文件类型或文件已损坏
但是当我正常打开这个下载的 PDF 时,它不会给出那个错误。当我尝试通过我的应用程序打开它们时出现错误。
我尝试打开存储在数据库中的 pdf 文件的代码如下:
private void lstBookParts_SelectedIndexChanged(object sender, EventArgs e)
{
if (lstBookParts.SelectedItems.Count > 0)
{
WiCommonFunction.LoadCommonSettings();
ShowInformation showData = new ShowInformation();
string item = lstBookParts.SelectedItems[0].Text;
string book = bookName;
CalculateCount(book);
DataSet ds1 = showData.ShowBookPDF(item);
DataTable dt1 = ds1.Tables[0];
FileStream FS = null;
var index = lstBookParts.SelectedIndices;
Int32 i = (Int32)(index[0]);
byte[] bytes = (byte[])(dt1.Rows[i]["Content"]);
string filepath = "D:\\temp1.pdf";
FS = new FileStream(filepath, System.IO.FileMode.Create);
FS.Write(bytes, 0, bytes.Length);
FS.Close();
Process proc = new Process();
proc.StartInfo.FileName = filepath;
proc.Start();
}
}
通过使用此代码,一些 PDF 文件可以正确打开,而其他文件则会出错。
我怎么解决这个问题?是否需要对代码进行更改?
请为此建议我任何解决方案。
提前致谢。