关于文件上传
1'文件上传
2 Private Sub btnUpFile_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUpFile.Click
3 '-------------------------------------------
4 '///执行文件上传///
5 '-------------------------------------------
6 Dim lstrFileName As String
7 Dim lstrFileNamePath As String
8 Dim lstrFileFolder As String
9
10 '设置HtmlInputFile属性
11 Me.loFile.Accept = "Excel/*" '设置可接收[MIME编码]类型为Excel格式
12 Me.loFile.MaxLength = 10 * 1024 * 1024 '设置可上传文件大小为10MB-据说好像达不到10M
13
14
15 '上传到服务器的目录名称
16 lstrFileFolder = Server.MapPath("../InIMEI/").ToString()
17
18 ' 获得文件名称
19 ' 注: loFile.PostedFile.FileName 返回的是通过文件对话框选择的文件名( 这之中包含了文件的目录信息 )
20 lstrFileName = loFile.PostedFile.FileName
21
22 ' 去掉目录信息,返回文件名称
23 lstrFileName = Path.GetFileName(lstrFileName)
24
25
26 ' 判断上传目录是否存在,不存在就建立
27 If (Not Directory.Exists(lstrFileFolder)) Then
28 Directory.CreateDirectory(lstrFileFolder)
29 End If
30
31
32 ' 得到上传目录及文件名称
33 lstrFileNamePath = lstrFileFolder & lstrFileName
34
35
36 '文件上传前进行大小验证判断
37 If Me.loFile.PostedFile.ContentLength > Me.loFile.MaxLength Then
38 Response.Write("<script language='javascript'>alert('不能上传!\n您所上传的文件大小为" & Me.loFile.PostedFile.ContentLength / 1024 & "KB\n超过可上传文件最大限制" & Me.loFile.MaxLength / 1024 / 1024 & "MB')</script>")
39 Exit Sub
40 End If
41
42 '遍历上传文件目录,看是否存在同名文件( 存在同名,则不准上传,并给出提示 )
43 If File.Exists(lstrFileNamePath) Then
44 Response.Write("<script language='javascript'>alert('不能上传!\n服务器目录中已经存在同名的" & lstrFileName & "文件\n如要继续上传,请修改文件名')</script>")
45 Exit Sub
46 End If
47
48
49 '上传文件到服务器
50 If Not (loFile.PostedFile Is Nothing) Then
51 Try
52 loFile.PostedFile.SaveAs(lstrFileNamePath)
53 Catch exc As Exception
54 Response.Write("Error Saving File " & lstrFileName & Chr(13) & exc.ToString())
55 File.Delete(lstrFileNamePath) '上传过程中出现错误,删除该文件
56 End Try
57 End If
58
59
60 ' 获得上传文件的属性
61 ' 获得文件名称
62 Me.ImportObj.FileName = lstrFileName
63 ' 获得文件类型
64 Me.ImportObj.FileType = loFile.PostedFile.ContentType
65 ' 获得文件长度
66 Me.ImportObj.FileSize = CStr(loFile.PostedFile.ContentLength / 1024) & "KB"
67
68 '------------------------------------------------------------
69 '///记录文件上传日志到数据库///
70 '------------------------------------------------------------
71 ' 文件所针对的类型ID [1-Repair]
72 Me.ImportObj.BizType = "1"
73 ' 上传人
74 Me.ImportObj.UpMan = Me.theUserName
75 ' 记录日志
76 If Me.ImportObj.AddUploadLog() <> -1 Then
77 Response.Write("<script language='javascript'>alert('上传成功!')</script>")
78 Me.DGBind()
79 End If
80 End Sub
81
2 Private Sub btnUpFile_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUpFile.Click
3 '-------------------------------------------
4 '///执行文件上传///
5 '-------------------------------------------
6 Dim lstrFileName As String
7 Dim lstrFileNamePath As String
8 Dim lstrFileFolder As String
9
10 '设置HtmlInputFile属性
11 Me.loFile.Accept = "Excel/*" '设置可接收[MIME编码]类型为Excel格式
12 Me.loFile.MaxLength = 10 * 1024 * 1024 '设置可上传文件大小为10MB-据说好像达不到10M
13
14
15 '上传到服务器的目录名称
16 lstrFileFolder = Server.MapPath("../InIMEI/").ToString()
17
18 ' 获得文件名称
19 ' 注: loFile.PostedFile.FileName 返回的是通过文件对话框选择的文件名( 这之中包含了文件的目录信息 )
20 lstrFileName = loFile.PostedFile.FileName
21
22 ' 去掉目录信息,返回文件名称
23 lstrFileName = Path.GetFileName(lstrFileName)
24
25
26 ' 判断上传目录是否存在,不存在就建立
27 If (Not Directory.Exists(lstrFileFolder)) Then
28 Directory.CreateDirectory(lstrFileFolder)
29 End If
30
31
32 ' 得到上传目录及文件名称
33 lstrFileNamePath = lstrFileFolder & lstrFileName
34
35
36 '文件上传前进行大小验证判断
37 If Me.loFile.PostedFile.ContentLength > Me.loFile.MaxLength Then
38 Response.Write("<script language='javascript'>alert('不能上传!\n您所上传的文件大小为" & Me.loFile.PostedFile.ContentLength / 1024 & "KB\n超过可上传文件最大限制" & Me.loFile.MaxLength / 1024 / 1024 & "MB')</script>")
39 Exit Sub
40 End If
41
42 '遍历上传文件目录,看是否存在同名文件( 存在同名,则不准上传,并给出提示 )
43 If File.Exists(lstrFileNamePath) Then
44 Response.Write("<script language='javascript'>alert('不能上传!\n服务器目录中已经存在同名的" & lstrFileName & "文件\n如要继续上传,请修改文件名')</script>")
45 Exit Sub
46 End If
47
48
49 '上传文件到服务器
50 If Not (loFile.PostedFile Is Nothing) Then
51 Try
52 loFile.PostedFile.SaveAs(lstrFileNamePath)
53 Catch exc As Exception
54 Response.Write("Error Saving File " & lstrFileName & Chr(13) & exc.ToString())
55 File.Delete(lstrFileNamePath) '上传过程中出现错误,删除该文件
56 End Try
57 End If
58
59
60 ' 获得上传文件的属性
61 ' 获得文件名称
62 Me.ImportObj.FileName = lstrFileName
63 ' 获得文件类型
64 Me.ImportObj.FileType = loFile.PostedFile.ContentType
65 ' 获得文件长度
66 Me.ImportObj.FileSize = CStr(loFile.PostedFile.ContentLength / 1024) & "KB"
67
68 '------------------------------------------------------------
69 '///记录文件上传日志到数据库///
70 '------------------------------------------------------------
71 ' 文件所针对的类型ID [1-Repair]
72 Me.ImportObj.BizType = "1"
73 ' 上传人
74 Me.ImportObj.UpMan = Me.theUserName
75 ' 记录日志
76 If Me.ImportObj.AddUploadLog() <> -1 Then
77 Response.Write("<script language='javascript'>alert('上传成功!')</script>")
78 Me.DGBind()
79 End If
80 End Sub
81
<!--前台.aspx页面验证//-->>
<script language="javascript">
<!--
//验证上传文件是格式是否为Excel
function checkFile()
{
var str = trim(document.all("loFile").value);
if(str=='')
{
alert('请选择要上传的文件!');
//document.all("loFile").focus();
return false;
}
var p = str.lastIndexOf('.');
var checkStr=str.substring(p).toUpperCase();
if(checkStr!='.XLS')
{
alert('上传文件格式有误\n只能上传Excel格式的文件');
return false;
}
return true;
}
//-->
<!--前台.aspx文件//--><!--
//验证上传文件是格式是否为Excel
function checkFile()
{
var str = trim(document.all("loFile").value);
if(str=='')
{
alert('请选择要上传的文件!');
//document.all("loFile").focus();
return false;
}
var p = str.lastIndexOf('.');
var checkStr=str.substring(p).toUpperCase();
if(checkStr!='.XLS')
{
alert('上传文件格式有误\n只能上传Excel格式的文件');
return false;
}
return true;
}
//-->
【请上传小于10MB的文件】<input class=AllBorderW id=loFile title=请上传要导入的包含出库条码的Excel文件 type=file size=50 name=loFile runat="server"> <asp:button id=btnUpFile runat="server" CssClass="SubmitButton" Text="开始上传"></asp:button><br>
注意:
注意: