РефератыИнформатикаUpUpload файлов с уникальными именами в ASP.NET

Upload файлов с уникальными именами в ASP.NET

Upload файлов с уникальными именами в ASP.NET


Христофоров Юрий


Задача: необходимо загружать файлы в папку upload на сервере с уникальными именами. Т.е. при загрузке двух файлов с одинаковыми именами они должны сохраняться под уникальными именами и не перезаписывать друг друга. В ASP.NET эта задача легко решается с помощью класса Guid. Т.о. файл будет сохранен например под именем fe008e1a-f07c-4263-8dc4-67f042a8cbdb_valley.jpg.


Папка upload должна иметь NTFS права на чтение/запись/изменение для интернет-пользователя.


Файл upload_cs.aspx (написан на C#):




<%@ Page Language="C#" %>


<script language="C#" runat="server">


void Upload_Click(Object sender, EventArgs e) {


string strFileName, strRootUpload, strUniqueName;


int index;


strRootUpload = Server.MapPath("./upload");


lblMessage.Text = "";


if (fileInp.PostedFile != null) {


try {


strFileName = fileInp.PostedFile.FileName;


if (strFileName != "") {


strFileName = strFileName.Replace("/", "");


index = strFileName.LastIndexOf("");


strFileName = strFileName.Substring(index + 1);


strUniqueName = System.Guid.NewGuid().ToString() + "_" + strFileName;


fileInp.PostedFile.SaveAs(strRootUpload + "" + strUniqueName);


lblMessage.Text = "Файлуспешнозагруженсименем " + strUniqueName + "<p>";


}


}


catch (Exception ex) {


lblMessage.Text = ex.Message + "<p>";


}


}


}


</script>


<HTML>


<HEAD>


<Title>Unique Upload</Title>


</HEAD>


<BODY>


<form enctype="multipart/form-data" runat="server">


<asp:Label id="lblMessage" runat="server" />


Файл:<br>


<input id="fileInp" type="file" r

unat="server"><br>


<asp:button text="Загрузить" OnClick="Upload_Click" runat="server" />


</form>


</BODY>


</HTML>



Файл upload_vb.aspx (написанна VB.NET):




<%@ Page Language="VB" %>


<script language="VB" runat="server">


Sub Upload_Click(ByVal sender As Object, ByVal e As EventArgs)


Dim strFileName, strRootUpload , strUniqueName As String


Dim index As Integer


strRootUpload = Server.MapPath("./upload")


lblMessage.Text = ""


If Not (fileInp.PostedFile Is Nothing) Then


Try


strFileName = fileInp.PostedFile.FileName


If strFileName <> "" Then


strFileName = strFileName.Replace("/", "")


index = strFileName.LastIndexOf("")


strFileName = strFileName.Substring(index + 1)


strUniqueName = System.Guid.NewGuid().ToString() + "_" + strFileName


fileInp.PostedFile.SaveAs(strRootUpload & "" & strUniqueName)


lblMessage.Text = "Файлуспешнозагруженсименем " & strUniqueName & "<p>"


End if


Catch ex As Exception


lblMessage.Text = ex.Message & "<p>"


End Try


End If


End Sub


</script>


<HTML>


<HEAD>


<Title>Unique Upload</Title>


</HEAD>


<BODY>


<form enctype="multipart/form-data" runat="server">


<asp:Label id="lblMessage" runat="server" />


Файл:<br>


<input id="fileInp" type="file" runat="server"><br>


<asp:button text="Загрузить" OnClick="Upload_Click" runat="server" />


</form>


</BODY>


</HTML>


Сохранить в соц. сетях:
Обсуждение:
comments powered by Disqus

Название реферата: Upload файлов с уникальными именами в ASP.NET

Слов:428
Символов:4890
Размер:9.55 Кб.