当前位置: 代码迷 >> ASP.NET >> input file 字符串截取解决思路
  详细解决方案

input file 字符串截取解决思路

热度:3111   发布时间:2013-02-25 00:00:00.0
input file 字符串截取
在文件上传时选择的控件是<input id="myFile" type="file" runat="server" name="myFile">
点击浏览,弹出文本框,选择需要的文件,选择完了在前面的文本框显示路径和文件名称,现在不想要路径,只想要文件名,这个用什么方法截取,点击浏览按钮(这个按钮是file类型自带的,在哪触发完截取呢)

------解决方案--------------------------------------------------------
C# code
 #region    上传文件到数据库和服务器        public void FN_UpFiles()        {            //遍历File表单元素            HttpFileCollection files = HttpContext.Current.Request.Files;            for (int iFile = 0; iFile < files.Count; iFile++)            {                //检查文件扩展名字                HttpPostedFile postedFile = files[iFile];                string fileName = "";//定义文件名                //string fileExtension = "";                fileName = Path.GetFileName(postedFile.FileName);//得到上传文件的完整名称 即文件名+后缀名                int index = fileName.IndexOf(".");                string FileType = fileName.Substring(index).ToLower();//截取文件后缀名                //FileTypeImg = "../FileTypeimg/" + hz + ".gif";                Guid fileGuid = Guid.NewGuid();//生成新的文件名称 以GUID命名防止文件名相同                string NewFileName = fileGuid.ToString();//新的文件名                NewFileName = NewFileName + FileType;//新的文件名+后缀名                if (fileName != "")//如果文件名不为空                {                    //文件虚拟路径                    string strpath = System.Web.HttpContext.Current.Server.MapPath("~/Upload/") + NewFileName;                    try                    {                        NRModel.File model = new NRModel.File();                        NRBLL.File bf = new NRBLL.File();                        Guid guid1 = Guid.NewGuid();                        Guid guid2 = new Guid(FolderId);                        Guid guid3 = Guid.NewGuid();                        Guid guid4 = Guid.NewGuid();                        model.Fileid = guid1;                        model.Folderid = guid2;                        model.Filepath = strpath;                        model.FileNam = fileName;                        model.FileSize = postedFile.ContentLength;                        model.Decription = this.TextArea1.Value.ToString();                        model.CreateOn = DateTime.Now;                        model.CreateBy = guid3;                        model.ModefyBy = guid4;                        if (bf.FN_AddNewRes(model) > 0)                        {                            NR.Error.Log.LogType("上传资源" + fileName + "成功!" + "服务器路径:" + strpath);                            //保存文件到指定目录(虚拟目录)                            postedFile.SaveAs(System.Web.HttpContext.Current.Server.MapPath("~/Upload/") +NewFileName);                            Page.RegisterStartupScript("提示", "<script language='javascript'>alert('上传成功!');self.opener.location.reload();window.close();</script>");                        }                    }                    catch (Exception ex)                    {                        NR.Error.Log.LogType(ex.ToString());                    }                }            }        }    }        #endregion
------解决方案--------------------------------------------------------
HTML code
    <input id="Text1" type="text" />    <input id="File1" type="file" onchange="GetPath(this.value)" />    <script type="text/javascript">        function GetPath(obj){            obj = obj.replace(/.*\\/g,"");            document.getElementById("Text1").value=obj        }    </script>
  相关解决方案