asp.net自带了upload file控件,操作起来很easy!

解决方案 »

  1.   

    你看看,能不能解决问题,不过按你的思路,可能要再把这个文件读出来转化后写到数据库,这个自己写吧,很简单了!asp.net自带了upload file控件htmlinput这个东东!
    上传时要注意的问题:
    1、需要将服务器端保存文件的目录设置为任何人可以存取。
    2、表单的Enctype(编码类型)属性需设定为"multipart/form-data"。
    以下是一个例子
    请输入文件路径:
    <Input type="File" id="FileUp" runat="server"><p>
    <asp:Button id="Upload" OnClick="UpLoadFile" Text="Upload" runat="server"/>
    </form>
    <Div id="FileInfo" Visible="False" runat="server">
    文件名称:<asp:Label id="FName" runat="server"/><br>
    文件大小:<asp:Label id="FSize" runat="server"/><br>
    文件类型:<asp:Label id="FType" runat="server"/><br>
    </Div>
    </body>
    </html>
    <script Language="VB" runat="server">
    Sub UpLoadFile(Sender As Object,e As EventArgs)
    '如果上传的长度为0,表示没有上传成功
    If FileUP.PostedFile.ContentLength=0 Then
    Fileinfo.Visible=False
    Exit Sub
    Else
    Fileinfo.Visible=True
    End if
    '显示上传文件的信息
    FSize.Text=CStr(FileUp.PostedFile.ContentLength)
    FType.Text=FileUp.PostedFile.ContentType
    FName.Text=FileUp.PostedFile.FileName
    '储存上传的文件
    Dim FileSplit() As String=Split(FileUp.PostedFile.Filename,"\")
    Dim FileName As String=FileSplit(FileSplit.Length-1)
    FileUP.PostedFile.SaveAs(Server.Mappath(".")&"\"&FileName)
    End Sub
    </script>
    希望能解决你的问题!
    保存时要用Server.Mappath(".")。
      

  2.   

    我是要客户端文件以流方式读到asp.net 操作的数据库中
      

  3.   

    w18ily(#vb#) 谢谢你,但是使用文件夹共享解决不了文件名重复的问题,
    如果客户端同时上传同名文件将无法处理,所以我想
    有没有直接客户端的文件按二进制的流方式保存的方法
    谢谢
      

  4.   

    可以使用file类和FILEINFO类
    FILE类有点像原来的FILESYSTEMOBJECT对象,不难用的,看看帮助吧