| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 721 人关注过本帖
标题:我用ASP.net和C#做了一个文档上传的功能,可是每次上传的时候都会出下面的错 ...
只看楼主 加入收藏
专属天使
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2013-5-28
结帖率:0
收藏
已结贴  问题点数:20 回复次数:6 
我用ASP.net和C#做了一个文档上传的功能,可是每次上传的时候都会出下面的错误,速求请教,谢谢
“/”应用程序中的服务器错误。
--------------------------------------------------------------------------------


 未能找到文件“学员招募公告.docx”。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: 未能找到文件“学员招募公告.docx”。

源错误:





行 30:             arrfile.Add(f.Name.ToString());
行 31:             arrfile.Add(f.Extension.ToString());
行 32:             arrfile.Add(f.Length/1000);
行 33:             arrfile.Add(tmessage.Text.Trim().ToString());
行 34:             file.SaveAs(Server.MapPath("UploadFile") + "\\" + f.Name.ToString());

源文件: d:\oa\AddDocument.aspx.cs    行: 32

堆栈跟踪:





[FileNotFoundException: 未能找到文件“学员招募公告.docx”。]
   (Int32 errorCode, String maybeFullPath) +305
   () +7604248
   AddDocument.btnupload_Click(Object sender, EventArgs e) in d:\oa\AddDocument.aspx.cs:32
   System.Web.UI.WebControls.Button.OnClick(EventArgs e) +111
   System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +110
   System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10
   System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13
   System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +36
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1565
 


--------------------------------------------------------------------------------
版本信息: Microsoft .NET Framework 版本:2.0.50727.5466; 版本:2.0.50727.5456
搜索更多相关主题的帖子: 公告 应用程序 详细信息 
2013-05-28 11:13
shangsharon
Rank: 9Rank: 9Rank: 9
来 自:湖北武汉
等 级:蜘蛛侠
威 望:7
帖 子:221
专家分:1261
注 册:2012-3-25
收藏
得分:0 
错误信息中提示错误可能在32行.
arrfile.Add(f.Length/1000);
文件长度有问题.

最好能多贴一些代码.
2013-05-28 12:13
专属天使
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2013-5-28
收藏
得分:0 
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using

public partial class AddDocument : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Session["uname"] == null)
        {
            Response.Redirect("login.aspx");
        }
    }
    protected void btnupload_Click(object sender, EventArgs e)
    {
        if (file.PostedFile.FileName != "")
        {
            string fullname = file.PostedFile.FileName.ToString();
            FileInfo f = new FileInfo(fullname);
            ArrayList arrfile = new ArrayList();
            arrfile.Add(Session["uname"].ToString());
            arrfile.Add(f.Name.ToString());
            arrfile.Add(f.Extension.ToString());
            arrfile.Add(f.Length/1000);
            arrfile.Add(tmessage.Text.Trim().ToString());
            file.SaveAs(Server.MapPath("UploadFile") + "\\" + f.Name.ToString());
            file fmethod = new file();
            fmethod.add_file(arrfile);
            this.tmessage.Text = "";
            Response.Write("<script>alert('文件上传成功!')</script>");
        }
        else
        {
            Response.Write("<script>alert('请选择要上传的文件!')</script>");
        }
        
    }
}
这就是全部的代码,不知道问题在哪里?
2013-05-28 12:41
shangsharon
Rank: 9Rank: 9Rank: 9
来 自:湖北武汉
等 级:蜘蛛侠
威 望:7
帖 子:221
专家分:1261
注 册:2012-3-25
收藏
得分:0 
FileInfo f = new FileInfo(fullname);
这是错的,不存在fullname.
修改:
if (file.HasFile)
        {
            var f = file.PostedFile;
            ArrayList arrfile = new ArrayList();
            arrfile.Add(Session["uname"].ToString());
            arrfile.Add(f.Name);

            arrfile.Add(f.Extension);//这里自己写个方法获取扩展名
            arrfile.Add(f.ContentLength/1000);
            arrfile.Add(tmessage.Text.Trim().ToString());
            file.SaveAs(Server.MapPath("UploadFile") + "\\" + f.Name);
            file fmethod = new file();
            fmethod.add_file(arrfile);
            this.tmessage.Text = "";
            Response.Write("<script>alert('文件上传成功!')</script>");
        }
        else
        {
            Response.Write("<script>alert('请选择要上传的文件!')</script>");
        }
2013-05-28 13:47
专属天使
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2013-5-28
收藏
得分:0 
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;

public partial class Upload_Flow : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

        if (Session["uname"].ToString() != null)
        {
            if (!IsPostBack)
            {
                staff sf = new staff();
                droppeople.DataSource = sf.sel_staff();
                droppeople.DataTextField = "s_name";
                droppeople.DataValueField = "s_id";
                droppeople.DataBind();
            }
        }
        else
        {
            Response.Redirect("login.aspx");
        }
    }
    protected void droppeople_SelectedIndexChanged1(object sender, EventArgs e)
    {
        this.TRePeople.Text = this.droppeople.SelectedItem.Text.ToString();
    }
    protected void btnSend_Click(object sender, EventArgs e)
    {
        if (TRePeople.Text.Trim().ToString() != null)
        {
            staff f = new staff();
            SqlDataReader dr = f.sel_staffInfo(Convert.ToInt32(Session["uname"]));
            if (dr.Read())
            {
                if (flow.PostedFile.FileName.ToString() != "")
                {
                    string fullname = flow.PostedFile.FileName.ToString();
                    string filename = fullname.Substring(fullname.LastIndexOf("\\") + 1);
                    ArrayList arr_flow = new ArrayList();
                    arr_flow.Add(Convert.ToInt32(Session["uname"]));
                    arr_flow.Add(dr["s_name"].ToString());
                    arr_flow.Add(droppeople.SelectedValue.ToString());
                    arr_flow.Add(tname.Text.Trim().ToString());
                    arr_flow.Add(filename);
                    arr_flow.Add(tmessage.Text.Trim().ToString());
                    file flows = new file();
                    flows.Insert_Flow(arr_flow);
                    flow.SaveAs(Server.MapPath("Flow") + "\\" + filename);
                    Response.Write("<script>alert('公文已送成功!')</script>");
                }
                else
                {
                    Response.Write("<script>alert('请选择公文文件!')</script>");
                }
            }

        }
        else
        {
            Response.Write("<script>alert('公文接收人不能为空!')</script>");
        }
    }
}
这个是公文发送的代码,也有添加文档上传的功能,这个就可以实现,我是不是可以根据这个修改之前那个代码?然后怎么修改呢?
2013-05-28 14:12
shangsharon
Rank: 9Rank: 9Rank: 9
来 自:湖北武汉
等 级:蜘蛛侠
威 望:7
帖 子:221
专家分:1261
注 册:2012-3-25
收藏
得分:20 
没有什么问题.
2013-05-28 15:18
专属天使
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2013-5-28
收藏
得分:0 
我想根据这个改我之前那个报错的代码,可是不知道怎么改?我按你给的那个试着改了改,但还是不行。。。
2013-05-28 16:26
快速回复:我用ASP.net和C#做了一个文档上传的功能,可是每次上传的时候都会出下 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.027748 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved