笔记3:FileWebRequest 与 FileWebResponse

笔记3:FileWebRequest 与 FileWebResponse,第1张

概述FileWebRequest 及 FileWebResponse这两个类衍生自 WebRequest 及 WebResponse,用以存取本机文件数据。 把本机路径“看作”URL,来初始化建立对象。   一、建立类实体            同样没有构造函数,必须引用类WebRequest的方法成员Create(),建立所需的FileWebRequest类实体,WebRequest根据传入的URI


fileWebRequest 及 fileWebResponse这两个类衍生自 WebRequest 及 WebResponse,用以存取本机文件数据。

把本机路径“看作”URL,来初始化建立对象。

一、建立类实体

同样没有构造函数,必须引用类WebRequest的方法成员Create(),建立所需的fileWebRequest类实体,WebRequest根据传入的URI字符串,返回一个fileWebRequest对象。下面sTraddress为本机所要存取的某个文件完整路径名称。

      Dim myfileWebRequestAs fileWebRequest = CType(WebRequest.Create(sTraddress),fileWebRequest)

fileWebRequest继承WebRequest类的方法成员,还有自身方法成员。

fileWebResponse 对象,同样必须由 fileWebRequest 的 GetResponse()方法,返回所取得的类对象。

二、文件存取

用特定文件URI初始化的HleWebRequest实体,取得返回的fileWebResponse对象,就可以进行文件存取 *** 作。

读取文件

与下载网页的过程非常类似,把本机上的文件当作“服务器”。

写入文件

利用fileWebRequest对象发出请求,由其传回连接目标文件所需的数据流;通过这个数据流,将数据被写入新建立的数据流,最后保存到指定的目标文件。返回数据流的方法则是通过引用GetRequestStream()方法来完成:

           Public FunctionGetRequestStream() As Stream

结果返回文件数据流对象,它可直接通过文件I/O的模式,引用Write()方法,将字节数据写入目标文件。

三、读写文件举例

fileWebRequest 及 fileWebResponse 类的使用,与WebRequest 与 WebResponse 相似。

下面对本机D盘文件进行读取与写入 *** 作。


imports System.Netimports System.IOimports System.TextPublic Class Form1    Private Sub btnRead_Click(sender As Object,e As EventArgs) Handles btnRead.Click        Dim fq As fileWebRequest        Dim fp As fileWebResponse        Dim st As Stream        Dim sr As StreamReader        Try            fq = CType(WebRequest.Create(txtAddress.Text),fileWebRequest) '创建filewebrequest            fp = fq.GetResponse            st = fp.GetResponseStream '响应流,即读取流            sr = New StreamReader(st,EnCoding.Default)            txtContent.Text = sr.ReadToEnd            st.Close()            sr.Close()        Catch ex As Exception            txtContent.Text = ex.Message        End Try    End Sub    Private Sub btnWrite_Click(sender As Object,e As EventArgs) Handles btnWrite.Click        Dim fq As fileWebRequest        Dim st As Stream        Dim a() As Byte        Dim lngCount As Int64        lngCount = EnCoding.Default.GetBytes(txtContent.Text).Count        ReDim a(lngCount)        a = EnCoding.Default.GetBytes(txtContent.Text)        Try            fq = CType(WebRequest.Create(txtAddress.Text),fileWebRequest)            fq.Method = "PUT"        '设置写入方式,默认(不设置)时是Get即读取            st = fq.GetRequestStream '请求流(非响应流),故方向是向文件写入            st.Write(a,a.Length)            st.Close()            MsgBox("完成!")        Catch ex As Exception            MsgBox(ex.Message)        End Try    End SubEnd Class






总结:1、filewebrequest对本机文件的存取,感觉用处不大,何必绕个圈子做这事呢?

2、流的方向,请求流与响应流

总结

以上是内存溢出为你收集整理的笔记3:FileWebRequest 与 FileWebResponse全部内容,希望文章能够帮你解决笔记3:FileWebRequest 与 FileWebResponse所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1266673.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-08
下一篇 2022-06-08

发表评论

登录后才能评论

评论列表(0条)

保存