如何做一个linkbutton或者按钮,实现点击之后打开链接PDF文件?
如何做一个linkbutton或者按钮,实现点击之后打开指定的PDF文件? --------------------编程问答-------------------- 沙发 ,帮忙顶 --------------------编程问答-------------------- 客户端要有安装pdf打开的软件啊那就只要给连接就好了 --------------------编程问答-------------------- 链接到那个PDF文件就行了吧,客户端要装那个Adobe什么什么的,PDF阅读的软件。
如果LZ说是不安装那个Adobe的软件,在web用控件类似的东西打开的话,偶不会。
--------------------编程问答-------------------- this.response.redirect("xxxxxx.pdf");??
我没理解错》? --------------------编程问答-------------------- 是:用户点击摁妞之后,然后弹出 打开还是保存的对话框,如果选打开,就用Adobe打开,保存的话就保存喽.就和网上down东西是一样的,只不过链接的是PDF文件 --------------------编程问答-------------------- protected void LinkButton1_Click(object sender, EventArgs e)
{
Response.Redirect("e:\\CS_FAQ.pdf");//打开本地E盘*.pdf文件
Response.Redirect("CS_FAQ.pdf");//打开工程同一级下的*.pdf文件
} --------------------编程问答-------------------- godgreat:这样不行.我刚试了.你试试.
--------------------编程问答-------------------- try
{
FullFileName = Server.MapPath(FileName); //FileName--要下载的文件名
FileInfo DownloadFile = new FileInfo(FullFileName);
if (DownloadFile.Exists)
{
Response.Clear();
Response.ClearHeaders();
Response.Buffer = false;
Response.ContentType = "application/octet-stream";
Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(DownloadFile.FullName, System.Text.Encoding.ASCII));
Response.AppendHeader("Content-Length", DownloadFile.Length.ToString());
Response.WriteFile(DownloadFile.FullName);
Response.Flush();
Response.End();
}
else
{
//文件不存在
}
}
catch
{
//文件不存在
} --------------------编程问答-------------------- 存在以下问题:
1:如果文件名是中文无法打开
2:没有:"打开还是保存"的对话框
3:是在嵌IE里直接打开的,不是在外面打开的 --------------------编程问答-------------------- try
{
string FileName = "CS_FAQ.pdf";
string FullFileName = Server.MapPath(FileName); //FileName--要下载的文件名
FileInfo DownloadFile = new FileInfo(FullFileName);
if (DownloadFile.Exists)
{
Response.Clear();
Response.ClearHeaders();
Response.Buffer = false;
Response.ContentType = "application/octet-stream";
Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(DownloadFile.FullName, System.Text.Encoding.ASCII));
Response.AppendHeader("Content-Length", DownloadFile.Length.ToString());
Response.WriteFile(DownloadFile.FullName);
Response.Flush();
Response.End();
}
else
{
//文件不存在
}
}
catch
{
//文件不存在
}
测试过了,没问题滴
记得using System.IO; --------------------编程问答-------------------- 中文乱码问题自己编码一下,效果已经出来了,不做处理了,小小改下就行了 --------------------编程问答-------------------- 这个代码不行,要报错
补充:.NET技术 , ASP.NET