c# - 如何在 ASP-NET C# 中从特定路径打开文件?

标签 c# asp.net file pdf

我需要一个按钮,允许我通过 ASP.NET C# 打开任何给定的文件。

这是我已经拥有的。

string strArchivo = "FileNameHere";
string strExtension = Path.GetExtension(strArchivo).ToLower();

if (strExtension == ".pdf")
{
    //I open a file which is located in a folder called Archivos
    Response.Write("<script>window.open('/Archivos/" + strArchivo + "');</script>");
}

问题来了,我知道这个方法是用来打开pdf文件的,因为它们是在浏览器上打开的,然后你可以从那里下载它们或打印它们。

我的老板要求我至少还可以打开 WORD、EXCEL 和 POWERPOINT 文件,因为这些是最常见的。

有没有办法可以打开或下载此类文件(或任何文件,如果可能)??

哦,还有一件事,关于我向您展示的代码,我注意到每次使用此方法打开文件时,我的网站都会突然切换字体(有些字母变大,而其他字母则切换为灰色)像颜色),是因为我在代码中遗漏了一些东西还是我该如何解决它?

提前致谢

最佳答案

尝试测试其他文件类型扩展名:

string strArchivo = "FileNameHere"; 
string strExtension = Path.GetExtension(strArchivo).ToLower(); 

if (strExtension == ".pdf" || strExtension == ".docx" || strExtension == ".doc"... etc) 
{ 
    //I open a file which is located in a folder called Archivos 
    Response.Write("<script>window.open('/Archivos/" + strArchivo + "');</script>"); 
} 

关于c# - 如何在 ASP-NET C# 中从特定路径打开文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12498618/

相关文章:

asp.net - 如何在 <td> 中制作 2 行

python - 读取文本文件并存储在列表列表中

c# - 向 Microsoft WinForm 控件添加元素

c# - 如何在 SQL Server 中创建接受外部参数的触发器?

c# - GridView 中的复选框 "Checked"值始终为 false

python - 在 Python 中将 LaTex 表读入数组

c - 使用 fseek 导致我的文件指针跳到 EOF

c# - 如何从 SQLDataReader 读取行版本或时间戳 SQL Server 数据类型到 C# 变量

c# - 如何取消执行非托管 C++ 外部例程的任务

c# - ASP.NET Core 2.1 - 实现 MemoryCache 时出错