读书人

头痛的有关问题

发布时间: 2012-01-12 22:11:58 作者: rapoo

头痛的问题
现在有主机和本地机.我要实现这样的效果
点击一个button按钮,把本地目录下的某个文件夹的所有txt文件复制到主机去
问题是button下是用cmd命令行下的copy命令来控制该事件,真伤脑筋.
请各位帮帮忙

[解决办法]
没有权限操作客户端的文件
[解决办法]
不可能做到,批量上传还不能满足你的需求的话,那么考虑activex
[解决办法]
为了IE的安全性, <input type= "file "是不允许JS操作的
所以我们一般所看到的,例如邮箱都是一个file或者多个file
但从来没有指定文件夹的
[解决办法]
我也是COPY的:
----------------------------
在以前的Web应用中,上传文件是个很麻烦的事,现在有了.NET,文件上传变得轻而易举。下面的这个例子实现了多文件上传功能。可以动态添加输入表单,上传的文件数量没有限制。代码如下:

MultiUpload.aspx

<%@ Page Language= "vb " AutoEventWireup= "false " Codebehind= "MultiUpload.aspx.vb "
Inherits= "aspxWeb.MultiUpload " %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN " >
<HTML>
<HEAD>
<title> 多文件上传 </title>
<script language= "JavaScript ">
function addFile()
{
var str = ' <INPUT type= "file " size= "50 " NAME= "File "> '
document.getElementById( 'MyFile ').insertAdjacentHTML( "beforeEnd ",str)
}
</script>
</HEAD>
<body>
<form id= "form1 " method= "post " runat= "server " enctype= "multipart/form-data ">
<center>
<asp:Label Runat= "server " ID= "MyTitle "> </asp:Label>
<P id= "MyFile "> <INPUT type= "file " size= "50 " NAME= "File "> </P>
<P>
<input type= "button " value= "增加(Add) " onclick= "addFile() ">
<asp:Button Runat= "server " Text= "上传 " ID= "Upload "> </asp:Button>
<input onclick= "this.form.reset() " type= "button " value= "重置(ReSet) ">
</P>
</center>
<P align= "center ">
<asp:Label id= "strStatus " runat= "server " Font-Names= "宋体 " Font-Bold= "True "
Font-Size= "9pt " Width= "500px " BorderStyle= "None " BorderColor= "White "> </asp:Label>
</P>
</form>
</body>
</HTML>

后代码:MultiUpload.aspx.vb

Public Class MultiUpload
Inherits System.Web.UI.Page
Protected WithEvents Upload As System.Web.UI.WebControls.Button
Protected WithEvents MyTitle As System.Web.UI.WebControls.Label
Protected WithEvents strStatus As System.Web.UI.WebControls.Label

#Region " Web Form Designer Generated Code "

'This call is required by the Web Form Designer.


<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()

End Sub

Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
'CODEGEN: This method call is required by the Web Form Designer
'Do not modify it using the code editor.
InitializeComponent()
End Sub

#End Region

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
MyTitle.Text = " <h3> 多文件上传 </h3> "
Upload.Text = "开始上传 "
If (Me.IsPostBack) Then Me.SaveImages()
End Sub

Private Function SaveImages() As System.Boolean
'遍历File表单元素
Dim files As System.Web.HttpFileCollection = System.Web.HttpContext.Current.Request.Files

'状态信息
Dim strMsg As New System.Text.StringBuilder( "上传的文件分别是: <hr color=red> ")
Dim iFile As System.Int32
Try
For iFile = 0 To files.Count - 1
'检查文件扩展名字
Dim postedFile As System.Web.HttpPostedFile = files(iFile)
Dim fileName, fileExtension As System.String
fileName = System.IO.Path.GetFileName(postedFile.FileName)
If Not (fileName = String.Empty) Then
fileExtension = System.IO.Path.GetExtension(fileName)
strMsg.Append( "上传的文件类型: " + postedFile.ContentType.ToString() + " <br> ")
strMsg.Append( "客户端文件地址: " + postedFile.FileName + " <br> ")
strMsg.Append( "上传文件的文件名: " + fileName + " <br> ")
strMsg.Append( "上传文件的扩展名: " + fileExtension + " <br> <hr> ")
'可根据扩展名字的不同保存到不同的文件夹
postedFile.SaveAs(System.Web.HttpContext.Current.Request.MapPath( "images/ ") + fileName)
End If
Next
strStatus.Text = strMsg.ToString()
Return True
Catch Ex As System.Exception
strStatus.Text = Ex.Message
Return False
End Try
End Function
End Class

C# 版本

UpLoad.aspx

<%@ Page language= "c# " Codebehind= "UpLoad.aspx.cs " AutoEventWireup= "false " Inherits= "WebPortal.Upload " %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN " >
<HTML>
<HEAD>
<title> 多文件上传 </title>
<script language= "JavaScript ">
function addFile()
{
var str = ' <INPUT type= "file " size= "50 " NAME= "File "> '
document.getElementById( 'MyFile ').insertAdjacentHTML( "beforeEnd ",str)
}
</script>
</HEAD>


<body>
<form id= "form1 " method= "post " runat= "server " enctype= "multipart/form-data ">
<div align= "center ">
<h3> 多文件上传 </h3>
<P id= "MyFile "> <INPUT type= "file " size= "50 " NAME= "File "> </P>
<P>
<input type= "button " value= "增加(Add) " onclick= "addFile() ">
<input onclick= "this.form.reset() " type= "button " value= "重置(ReSet) ">
<asp:Button Runat= "server " Text= "开始上传 " ID= "UploadButton "> </asp:Button>
</P>
<P>
<asp:Label id= "strStatus " runat= "server " Font-Names= "宋体 " Font-Bold= "True " Font-Size= "9pt "
Width= "500px " BorderStyle= "None " BorderColor= "White "> </asp:Label>
</P>
</div>
</form>
</body>
</HTML>

读书人网 >asp.net

热点推荐