【问题标题】:Upload image in folder and rename it上传文件夹中的图像并重命名
【发布时间】:2014-04-23 15:23:08
【问题描述】:

我创建了一个界面,用户将在其中选择和上传图像。但是我如何重命名并将图像保存在服务器文件夹(图像)中,并在我的图像库页面上再次显示它。我的网站是用asp.net c#开发的。建议我一些想法或链接以供参考。

上传按钮点击代码如下:

protected void Button1_Click(object sender, EventArgs e)
{
    if (FileUpload1.HasFile)
    {
        string fileName = Path.GetFileName(FileUpload1.PostedFile.FileName);
        FileUpload1.PostedFile.SaveAs(Server.MapPath("~/uploads/") + fileName);
        Response.Redirect(Request.Url.AbsoluteUri);
    }
}

谢谢。

【问题讨论】:

  • 请按原样发布上传代码。
  • “谁”在运行 IIS EXpress 或 IIS?这个文件夹有什么权限~/uploads?
  • 好的,你把上传图片的代码贴出来了。您的图库页面的代码怎么样?
  • 我的画廊页面尚未创建,因为我一直在重命名和上传图片。现在我只是使用gridview在文件夹中显示图像..谢谢

标签: c# asp.net


【解决方案1】:

显然,您需要网站目录中的某个文件夹。为 Web 应用程序运行应用程序池的用户需要对其进行读/写访问。根据您的需要,您可能不希望用户(运行应用程序池的用户除外)直接浏览此文件夹。

您需要将新文件路径存储在某处(数据库、XML 文件、纯文本等),因此当用户请求查看图像时,您将打开此文件,并将其作为其响应流返回正确的类型(JPG、GIF、BMP 等),以便提示用户打开或保存。

【讨论】:

  • 老实说,我喜欢你的第一段,但不太喜欢你的第二段..
  • 除非他有更具体的要求,否则我会这样做。随意编辑或添加您自己的答案。
  • @Dalorzo 如果你要说你不喜欢某样东西,说出原因是礼貌和建设性的。
  • @FrancisDucharme 抱歉,我试图表现出建设性。第一段我很喜欢。我只是认为关于第二个的陈述可能具有误导性。我再次为误解道歉,但我同意这个答案值得 +1,我刚刚做到了。
  • @Dalorzo 没有冒犯。
【解决方案2】:

对于重命名并将图像保存在服务器文件夹中,请尝试以下代码:-

 //Get Filename from fileupload control and rename it
 string filename = ((DateTime.Now.ToString().Replace("/", "-")).Replace(":", "")).Replace(" ", "_") + "_" + ((Path.GetFileName(FileUpload1.PostedFile.FileName)).Replace(".",".")).Replace(" ","");

 FileUpload1.SaveAs(Server.MapPath("~/uploads/" + filename));

【讨论】:

    猜你喜欢
    • 2018-12-20
    • 1970-01-01
    • 1970-01-01
    • 2022-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-13
    • 2016-12-02
    相关资源
    最近更新 更多