<input size=10  type=File  name=cPub"+allCount+">怎样获取file的路径上传到数据库?因为是用javascript动态新增行的,所以只能用file 不能用asp.net中的控件fileupload。

解决方案 »

  1.   

            ''' <summary>
            ''' 保存文件集合
            ''' </summary>
            ''' <param name="Folder">基础文件夹名称</param>
            ''' <param name="AddAppUrl">加上应用程序目录</param>
            ''' <res>
            ''' 
            ''' </res>
            Public Function SaveFiles(ByVal Folder As String, Optional ByVal AddAppUrl As Boolean = True) As String
                Try
                    If AddAppUrl Then Folder = GetAppPath() & Folder
                    If My.Computer.FileSystem.DirectoryExists(Folder) = False Then
                        My.Computer.FileSystem.CreateDirectory(Folder)
                    End If
                    Dim Files As System.Web.HttpFileCollection = Me.GetFiles
                    Dim postedFile As System.Web.HttpPostedFile
                    Dim FilePath As String, II As Integer
                    Dim FileList As String = ""
                   For II = 0 To Files.Count - 1
                        postedFile = Files(II)
                        If postedFile.FileName <> "" Then
                            FilePath = GetFileName(GetLine(Folder) & System.IO.Path.GetFileName(postedFile.FileName))
                            postedFile.SaveAs(FilePath)
                            FileList = FileList & System.IO.Path.GetFileName(FilePath) & ","
                        End If
                    Next
                    Return FileList
                Catch ex As Exception
                    Throw New System.Exception(ex.Message)
                End Try
            End Function
      

  2.   

    实际上就是将
    Dim Files As System.Web.HttpFileCollection = Me.GetFiles
    Dim postedFile As System.Web.HttpPostedFile上传的文件集合遍历后保存而已;和保存单个文件没有太大差异;
    ││博客空间:http://blog.csdn.net/lovingkiss
    ││资源下载:http://download.csdn.net/user/lovingkiss
    ││Email:loving-kiss@163.com [MSN也是这个]
    ││联系方式:Q66840199 项目、聊天、咨询、探讨、统统收费,呵呵......
    ╚---------------------------------------------------------------------------------------------------------ō*︻$▅▆▇◤ 
      

  3.   

    老兄,这个已经是老生常谈了:
    1.如果你页面中没有服务端upload控件,请在Page_Load中注册form的enctype(如果有服务端upload控件,会自动注册的)
    protected void Page_Load(object sender, EventArgs e)
    {
       this.form1.Enctype = "multipart/form-data";
    }
    2.上传文件的代码
    protected void Button1_Click(object sender, EventArgs e)
    {
       //核心是使用Request.Files方法
        for (int i = 0; i < Request.Files.Count; i++)
        {
           Request.Files[i].SaveAs(Server.MapPath("***"));
        }
    }
      

  4.   

    Request.Files[cPub"+allCount+"]可以获取到file的内容?
      

  5.   

    name是cPub"+allCount+"哦 Request.Files[i]可以获取吗
      

  6.   

    我是这样的System.Web.HttpFileCollection files = Request.Files;
    然后再循环下,页面上的form要加enctype="multipart/form-data"
      

  7.   

      Request.Files[i].SaveAs(Server.MapPath("/upload"));    
    这样会提示拒绝存取路径
      

  8.   

    给了完全控制权限还是提示拒絕存取路徑 'c:\inetpub\wwwroot\upload'。
      

  9.   

    狂汗,你不能变通一下么?postedFile.FileName 就是获取文件名的,前面加上你的目标路径
      

  10.   

    我知道postedFile.FileName是获取文件名,但是name是变化的,怎样获取?我就不知道怎样获取name=cPub"+allCount+" 的name啊。说了一大堆都不明白我的意思。
      

  11.   

    C#
        for (int i = 0; i < Request.Files.Count; i++) 
        { 
          Request.Files[i].SaveAs(Server.MapPath("***")); 
        }VB
                For II = 0 To Files.Count - 1 
                        postedFile = Files(II) 
                        If postedFile.FileName <> "" Then 
                            FilePath = GetFileName(GetLine(Folder) & System.IO.Path.GetFileName(postedFile.FileName)) 
                            postedFile.SaveAs(FilePath) 
                            FileList = FileList & System.IO.Path.GetFileName(FilePath) & "," 
                        End If 
                    Next 
    楼上的都有答案了的——不是我们不懂你的意思,是你基础太薄弱了;
    集合的遍历,每次出来的就是不同的文件名称;
    For的执行体内:
    postedFile = Files(II) 获得第II个文件
    postedFile.FileName 当前处理的文件名
    你组合一下路径,然后保存就是了;咨询问题——不要回答者还没恼,你先不耐烦;这不是好的方式;
      

  12.   

    源代码给你了,你还需要别人一行行的给你解释,解释不清楚都不行;反过来你觉得这样对么??大家进来帮你——只是义务的,没有应该与否的说法;
    你自己也要用心的研究一下才行;
    ││博客空间:http://blog.csdn.net/lovingkiss
    ││资源下载:http://download.csdn.net/user/lovingkiss
    ││Email:loving-kiss@163.com [MSN也是这个]
    ││联系方式:Q66840199 项目、聊天、咨询、探讨、统统收费,呵呵......
    ╚---------------------------------------------------------------------------------------------------------ō*︻$▅▆▇◤ 
      

  13.   

    我已经解决了
    protected void Button1_Click(object sender, EventArgs e)
        {                                 
            for (int i = 0; i < Request.Files.Count; i++)
            {
                string UserPath = Server.MapPath("upload").ToString() ;
                //如果文件夹不存在则创建
                if (!System.IO.Directory.Exists(UserPath))
                {
                    System.IO.Directory.CreateDirectory(UserPath);
                }            string fileName2 = System.IO.Path.GetFileName(Request.Files[i].FileName);
                //Response.Write(UserPath + "\\" + fileName2);            Request.Files[i].SaveAs(UserPath + "\\" + fileName2);         
            } string fileName2 = System.IO.Path.GetFileName(Request.Files[i].FileName);这句才是最重点的,
    我还是不知道怎样获取 name=cPub"+i+" 的name  
    如果是那么name="+i+" 就这样Request.Files[i]
    如果name=cPub"+i+" 呢?