今天看到需求要在页面上显示pdf,自己整了半天,啥效果都没有,偶尔有效果还各种不兼容,很无语的说。捣鼓了半天,没办法了,去谷歌了下,介绍了各种插件,各种方法,但是都挺繁琐的,本人不是一个很喜欢使用插件的,但是有的时候自己写不出来,也就用了。这个功能倒还不至于用插件。代码也很少。
/// <summary> /// 读取PDF文件 /// </summary> /// <param name="fName">文件名称(可以从其他地方传进来)</param> /// <returns></returns> public FileStreamResult readPDF(string fName = "111.pdf") { string dirp = @"放pdf文件的文件夹路径"; DirectoryInfo mydir = new DirectoryInfo(dirp); string pdfSrc = string.Empty; foreach (FileSystemInfo fsi in mydir.GetFileSystemInfos()) { if (fsi is FileInfo) { FileInfo fi = (FileInfo)fsi; string x = System.IO.Path.GetDirectoryName(fi.FullName); string s = System.IO.Path.GetExtension(fi.FullName); if (fi.Name == fName) { pdfSrc = dirp + "\\" + fi.Name;//pdf路径 ViewBag.title = fi.Name;//网页标题 } } } FileStream fs = new FileStream(pdfSrc, FileMode.Open, FileAccess.Read); return File(fs, "application/pdf"); }