我使用File1控件上传文件,我想上传到保存到文件夹后该文件以日期时间命名 且文件的后最名也有!如 2006-10-11 9:00.jpg 请大家指点指点呀
FileName = System.IO.Path.GetFileName(DateTime.Now.ToString().Trim()).ToString(); //不行呀
我使用File1控件上传文件,我想上传到保存到文件夹后该文件以日期时间命名 且文件的后最名也有!如 2006-10-11 9:00.jpg 请大家指点指点呀
FileName = System.IO.Path.GetFileName(DateTime.Now.ToString().Trim()).ToString(); //不行呀
strExtension = System.IO.Path.GetExtension(UpLoadFile.PostedFile.FileName);
//将图片重命名
strFileName = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString()
+ DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString() + strExtension;
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim fileOK As Boolean = False
'獲取基於應用程序根文件夾的絕對路徑
Dim path As String = Server.MapPath("~/")
'如果確認了上傳文件,則判斷文件類型是否符合要求
If Me.FileUpload1.HasFile Then
Dim fileExtension As String = System.IO.Path.GetExtension(Me.FileUpload1.FileName).ToLower
Dim allowedExtensions(4) As String
allowedExtensions(0) = ".gif"
allowedExtensions(1) = ".png"
allowedExtensions(2) = ".bmp"
allowedExtensions(3) = ".jpg"
Dim i As Int16 = 0
For i = 0 To allowedExtensions.Length - 1
If fileExtension = allowedExtensions(i) Then
fileOK = True
Exit For
End If
Next
'調用SaveAs方法,實現上傳,並顯示相關信息
If fileOK Then
Try
Me.FileUpload1.SaveAs(path + Me.FileUpload1.FileName)
Me.Label1.Text = "文件上傳成功"
Me.Label2.Text = "<b>原文件路徑:</b>" + Me.FileUpload1.PostedFile.FileName + "<br/>" + "<b> 文件大小: </b>" + Me.FileUpload1.PostedFile.ContentLength.ToString + "字節 <br />" + "<b> 文件類型: </b>" + Me.FileUpload1.PostedFile.ContentType + "<br />"
Catch ex As Exception
Me.Label1.Text = "文件上傳不成功!"
End Try
End If
Else
Me.Label1.Text = "只能夠上傳圖片文件."
End If
End Sub
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace WebApplication1
{
/// <summary>
/// UpFile 的摘要说明。
/// </summary>
public class UpFile : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Button btnUpdateFile;
protected System.Web.UI.WebControls.Label fname;
protected System.Web.UI.WebControls.Label fenc;
protected System.Web.UI.WebControls.Label fsize;
protected System.Web.UI.HtmlControls.HtmlInputFile myFile;
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.btnUpdateFile.Click += new System.EventHandler(this.btnUpdateFile_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void btnUpdateFile_Click(object sender, System.EventArgs e)
{
//检查上传文件不为空
if(myFile.PostedFile!=null)
{
string nam = myFile.PostedFile.FileName ;
//取得文件名(抱括路径)里最后一个"."的索引
int i= nam.LastIndexOf(".");
//取得文件扩展名
string newext =nam.Substring(i);
//这里我自动根据日期和文件大小不同为文件命名,确保文件名不重复
DateTime now = DateTime.Now;
string newname=now.DayOfYear.ToString()+myFile.PostedFile.ContentLength.ToString();
//保存文件到你所要的目录,这里是IIS根目录下的upload目录.你可以改变.
//注意: 我这里用Server.MapPath()取当前文件的绝对目录.在asp.net里"\"必须用"\\"代替
myFile.PostedFile.SaveAs(Server.MapPath("\\upload\\"+newname+newext));
//得到这个文件的相关属性:文件名,文件类型,文件大小
fname.Text=myFile.PostedFile.FileName;
fenc.Text=myFile.PostedFile.ContentType ;
fsize.Text=myFile.PostedFile.ContentLength.ToString();
}
}
}
}