input 上传文件怎么保存到服务器

用FileStream fs = File.OpenRead(flieName);中flieName是本地路径地址,但是OpenRead是读的服务器的地址,有没有办法直接读本地路径,或者把本地文件先存到服务器,由于用的是Ext的框架,不能用FileUpload控件,所以不知道该怎么保存,望各位大侠指教~~~~~~~~~
<ext:ContentPanel ID="cp1" runat="server" ShowBorder="false" ShowHeader="false" EnableBackgroundColor ="true" >
<input type="file" name="upfile" id="fu" style="display:none; width:1px" />
</ext:ContentPanel>

<ext:TextBox ID="txtfilename" runat="server" Label="合同原件" OffsetRight="0"></ext:TextBox>
<ext:Button ID="Button1" runat="server" Text="上传" OnClientClick="setvalue()" ></ext:Button>

<script type="text/javascript">

function setvalue() {
document.getElementById("fu").click();
document.getElementById("<%=txtfilename.ClientID %>").value = document.getElementById("fu").value;
}

</script>

前台相关的代码基本是这样的
按照LX同志的方法做,在SaveAs的时候报“未将对象引用设置到实例的错误”

第1个回答  推荐于2018-04-09
我是来收分的

客户端
<input type="file" name="upfile" />

服务端代码

HttpPostedFile oFile = Request.Files["upfile"]; //这里的"upfile"要和客户端type="file"的name一致

string sFilePath = "服务器端的绝对路径";

oFile.SaveAs(sFilePath); //将上传的文件保存到 指定的路径

===========================================
为何要将type="file" 隐藏?
只有当你从type="file"点“浏览”选择要上传的文件后,执行form的post提交在服务端才能收到type="file"上传上来的数据啊本回答被网友采纳
相似回答