public partial class _Default : System.Web.UI.Page
{
  public string fname;
  protected void Page_Load(object sender, EventArgs e)
  {
    
  }
    
  protected void Button1_Click(object sender, EventArgs e)
  {
  if (UploadFile.Value != null && UploadFile.Value != "")
  {
  InputFile();
  }
  string sql;
  sql = "insert into ziyuanku(ziyuanmingcheng,ziyuanbao) values('" + TB1.Text.ToString().Trim() + "','" + fname + "')";
  int result;
  SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["getcon"].ConnectionString);
    
  conn.Open();
  SqlCommand cmd = new SqlCommand(sql, conn);
  result = cmd.ExecuteNonQuery();
  conn.Close();
   
  if (result == 1)
  {
  Response.Write("<script>javascript:alert('上传成功');</script>");
  }
  else
  {
  Response.Write("<script>javascript:alert('系统错误');</script>");
  }
  }
  private void InputFile()
  {
  if (UploadFile.Value != null)
  {
  string nam = UploadFile.PostedFile.FileName;
  int i = nam.LastIndexOf(".");
  string newext = nam.Substring(i);
  DateTime now = DateTime.Now;
  string newname = now.DayOfYear.ToString() + UploadFile.PostedFile.ContentLength.ToString();
  string filepath = UploadFile.PostedFile.FileName;
  string filename = filepath.Substring(filepath.LastIndexOf("\\") + 1);
  fname = filename;  FileInfo f = new FileInfo(filepath);
  string newpath = Server.MapPath("File") + "\\" + filename;
  f.CopyTo(newpath, true);

解决方案 »

  1.   

    上传文件,根据时间生成一个文件名,存入服务器,把文件名存入ziyuanku数据库。
      

  2.   

     private void InputFile()
      {
      if (UploadFile.Value != null)    //如果上传文件存在
      {
      string nam = UploadFile.PostedFile.FileName;   //获取文件名
      int i = nam.LastIndexOf(".");                  //取最后一个"."  
      string newext = nam.Substring(i);              //获取文件扩展名,好像不用这么麻烦吧,似乎有个专门的方法提取扩展名.    
      DateTime now = DateTime.Now;               //获得当前时间
      string newname = now.DayOfYear.ToString() + UploadFile.PostedFile.ContentLength.ToString();   //取个新文件名,新文件名是:今年过去的天数+文件的上传字节数。
      string filepath = UploadFile.PostedFile.FileName;   //重新获取上传文件名
      string filename = filepath.Substring(filepath.LastIndexOf("\\") + 1); //把路径去掉,只取文件名。
      fname = filename;   //(莫名奇妙,后面好像没用到),换个变量保存文件名  FileInfo f = new FileInfo(filepath);   //创建一个文件对象
      string newpath = Server.MapPath("File") + "\\" + filename;  //获取在服务器上的新路径
      f.CopyTo(newpath, true);   //保存文件另外俺想问问后面可能出现的高手们。怎样在本地就判断上传文件的大小来决定是否上传呢?