关于文件上传
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.Click3
'-------------------------------------------4
'///执行文件上传///5
'------------------------------------------- 6
Dim lstrFileName As String7
Dim lstrFileNamePath As String8
Dim lstrFileFolder As String9

10
'设置HtmlInputFile属性11
Me.loFile.Accept = "Excel/*" '设置可接收[MIME编码]类型为Excel格式12
Me.loFile.MaxLength = 10 * 1024 * 1024 '设置可上传文件大小为10MB-据说好像达不到10M13

14

15
'上传到服务器的目录名称16
lstrFileFolder = Server.MapPath("../InIMEI/").ToString()17

18
' 获得文件名称 19
' 注: loFile.PostedFile.FileName 返回的是通过文件对话框选择的文件名( 这之中包含了文件的目录信息 )20
lstrFileName = loFile.PostedFile.FileName21

22
' 去掉目录信息,返回文件名称23
lstrFileName = Path.GetFileName(lstrFileName)24

25

26
' 判断上传目录是否存在,不存在就建立 27
If (Not Directory.Exists(lstrFileFolder)) Then28
Directory.CreateDirectory(lstrFileFolder)29
End If30

31

32
' 得到上传目录及文件名称 33
lstrFileNamePath = lstrFileFolder & lstrFileName34

35

36
'文件上传前进行大小验证判断37
If Me.loFile.PostedFile.ContentLength > Me.loFile.MaxLength Then38
Response.Write("<script language='javascript'>alert('不能上传!\n您所上传的文件大小为" & Me.loFile.PostedFile.ContentLength / 1024 & "KB\n超过可上传文件最大限制" & Me.loFile.MaxLength / 1024 / 1024 & "MB')</script>")39
Exit Sub40
End If41

42
'遍历上传文件目录,看是否存在同名文件( 存在同名,则不准上传,并给出提示 )43
If File.Exists(lstrFileNamePath) Then44
Response.Write("<script language='javascript'>alert('不能上传!\n服务器目录中已经存在同名的" & lstrFileName & "文件\n如要继续上传,请修改文件名')</script>")45
Exit Sub46
End If47

48

49
'上传文件到服务器50
If Not (loFile.PostedFile Is Nothing) Then51
Try52
loFile.PostedFile.SaveAs(lstrFileNamePath)53
Catch exc As Exception54
Response.Write("Error Saving File " & lstrFileName & Chr(13) & exc.ToString())55
File.Delete(lstrFileNamePath) '上传过程中出现错误,删除该文件56
End Try57
End If58

59

60
' 获得上传文件的属性 61
' 获得文件名称62
Me.ImportObj.FileName = lstrFileName63
' 获得文件类型64
Me.ImportObj.FileType = loFile.PostedFile.ContentType65
' 获得文件长度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.theUserName75
' 记录日志76
If Me.ImportObj.AddUploadLog() <> -1 Then77
Response.Write("<script language='javascript'>alert('上传成功!')</script>")78
Me.DGBind()79
End If80
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;
}
//-->
【请上传小于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>
注意:



浙公网安备 33010602011771号