内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

vb.net中seek vbnet web

VB.NET 怎么讀寫二進(jìn)制文件,類似Open

本示例闡釋二進(jìn)制文件的基本輸入和輸出(使用 BinaryReader、BinaryWriter 和 FileStream 類。 在如何創(chuàng)建日志文件標(biāo)題下面有一個(gè)類似的主題。讀寫二進(jìn)制信息使您可以創(chuàng)建和使用通過其他輸入和輸出方法無法訪問的文件。本示例還展示寫入非字符串?dāng)?shù)據(jù),并展示二進(jìn)制 I/O 的功能。

網(wǎng)站的建設(shè)創(chuàng)新互聯(lián)建站專注網(wǎng)站定制,經(jīng)驗(yàn)豐富,不做模板,主營網(wǎng)站定制開發(fā).小程序定制開發(fā),H5頁面制作!給你煥然一新的設(shè)計(jì)體驗(yàn)!已為三輪攪拌車等企業(yè)提供專業(yè)服務(wù)。

盡管計(jì)算機(jī)上的文件可以不同的類型和文件存儲,但是,二進(jìn)制格式是文件的較常用格式之一。此處對創(chuàng)建二進(jìn)制文件的簡短介紹使用基類 BinaryReader 和 BinaryWriter 從文件獲取信息,并將信息放入文件。這些類中的每個(gè)類均封裝一個(gè)信息流,因此,在進(jìn)一步操作之前,需要?jiǎng)?chuàng)建一個(gè)可用于來回寫信息的流。因?yàn)橐獎(jiǎng)?chuàng)建文件,所以可使用 FileStream 來公開特定文件,在此情況下,如果該文件已存在,則可以修改該文件,或者如果該文件尚不存在,則可以創(chuàng)建該文件。在有 FileStream 之后,可以使用它來構(gòu)造 BinaryReader 和 BinaryWriter

在讀入信息之后,可以對信息進(jìn)行所需的任何操作。但是,在某些時(shí)候,您可能想要將信息寫回文件,因此需要 BinaryWriter。在本示例中,您將使用 Seek 方法將信息追加到文件結(jié)尾,因此,在開始寫入之前,請確保指向文件的指針位于文件結(jié)尾。在使用 BinaryWriter 寫入信息時(shí)有多個(gè)選項(xiàng)。因?yàn)?Write 方法有足夠的重載用于您能夠?qū)懭氲乃行畔㈩愋?,所以,可以使?Write 方法向您的編寫器封裝的流寫入任何標(biāo)準(zhǔn)形式的信息。本情況下,還可以使用 WriteString 方法向流中寫入長度預(yù)先固定的字符串。

VB Source: VB\ReadWrite.aspx

%@ Import Namespace="System.Text" %

%@ Import Namespace="System.IO" %

script language="VB" runat=server

Class TestBinary

Public Shared Function ReadFile(selection As String) As String

Dim output As StringBuilder = New StringBuilder()

Dim fs As FileStream = New FileStream("data.bin", FileMode.OpenOrCreate)

Dim r As BinaryReader = New BinaryReader(fs)

Try

r.BaseStream.Seek(0,SeekOrigin.Begin) ' 將文件指針設(shè)置到文件開始

' 因?yàn)椴煌瑪?shù)據(jù)類型之間的很多轉(zhuǎn)換結(jié)果都是不可解釋的,

' 所以當(dāng)在其他類型與二進(jìn)制數(shù)據(jù)之間進(jìn)行轉(zhuǎn)換時(shí),

' 必須捕捉可能引發(fā)的任何潛在的異常...

' 能夠正確讀取數(shù)據(jù)依賴于如何寫入信息...

' 這與寫日志文件時(shí)不同。

Do While r.BaseStream.Position r.BaseStream.Length ' 當(dāng)未到達(dá)文件結(jié)尾時(shí)

Select Case selection

Case "Boolean"

output.Append( r.ReadBoolean().ToString() )

Case "String"

output.Append( r.ReadString() )

Case "Integer"

output.Append( r.ReadInt32().ToString() )

End Select

Loop

Finally

fs.Close()

End Try

return output.ToString()

End Function

Public Shared Function WriteFile(output As Object, selection As String) As String

Dim fs As FileStream = New FileStream("data.bin", FileMode.Create)

Dim w As BinaryWriter = New BinaryWriter(fs)

Dim strOutput As String = ""

w.BaseStream.Seek(0, SeekOrigin.End) ' 將文件指針設(shè)置到文件結(jié)尾

' 因?yàn)檎趯懙男畔⒖赡懿贿m合于所選擇用于寫入的特定樣式

' (例如,單詞“Hello”作為整數(shù)?),所以我們必須捕捉寫入

' 錯(cuò)誤,并通知用戶未能執(zhí)行該任務(wù)

Try

Select Case selection

Case "Boolean"

Dim b As Boolean = Convert.ToBoolean(output)

w.Write( b )

Case "String"

Dim s As String = Convert.ToString(output)

w.Write( s )

Case "Integer"

Dim i As Int32 = Convert.ToInt32(output)

w.Write(i)

End Select

Catch E As Exception

' 讓用戶知道未能寫入該信息

strOutput = "寫異常:" chr(13) _

"無法以所請求的格式寫入要寫入的信息。" _

chr(13) "請輸入嘗試寫入的數(shù)據(jù)類型的有效值"

End Try

fs.Close()

return strOutput

End Function

End Class

Sub btnAction_Click(src As Object, E As EventArgs)

Dim s As String = ""

' 寫出文件

s = TestBinary.WriteFile(txtInput.Text, lstDataIn.SelectedItem.Text)

If s = "" Then

Try

' 讀回信息,顯示信息...

txtOutput.Text = TestBinary.ReadFile(lstDataIn.SelectedItem.Text)

Catch Exc As Exception

' 讓用戶知道未能寫入信息

s = "讀異常:" chr(13) _

"無法以所請求的格式讀取要寫入的信息。" _

chr(13) "請輸入嘗試寫入的數(shù)據(jù)類型的有效值"

End Try

Else

txtOutput.Text = s

End If

End Sub

/script

html

head

link rel="stylesheet" href="intro.css"

/head

body style="background-color:f6e4c6"

form method=post runat="server"

p

table

tr

tdb

下面的示例使用 BinaryWriter 對象創(chuàng)建一個(gè)二進(jìn)制文件,然后使用 BinaryReader 讀取該信息。/b可以選擇不同的對象來將所需的信息寫入文件

此演示用于強(qiáng)調(diào)您需要知道如何讀取已寫入的二進(jìn)制文件。一旦以某種格式寫入數(shù)據(jù),就只能以該格式讀取該信息。但是,可以將多種不同的數(shù)據(jù)類型寫入文件。在此演示中,輸入任意字符串并將它們作為字符串讀取,對于整型,僅輸入整型數(shù)值項(xiàng)(試試浮點(diǎn)數(shù)字,然后看看會發(fā)生什么...);對于布爾型項(xiàng),僅輸入詞“false”和“true”。

p

hr

/td

/tr

/table

asp:Table id="basetable" runat="server" border="0" cellspacing="0" cellpadding="5"

asp:tablerow

asp:tablecell verticalalign="top"

請選擇要保存到二進(jìn)制文件的數(shù)據(jù)類型...

/asp:tablecell

asp:tablecell verticalalign="top"

asp:listbox id="lstDataIn" runat="server"

asp:listitemBoolean/asp:listitem

asp:listitem selected="true"String/asp:listitem

asp:listitemInteger/asp:listitem

/asp:listbox

/asp:tablecell

asp:tablecell verticalalign="top"

asp:button id="btnAction" onclick="btnAction_Click" Text="寫入/讀取文件" runat="server"/

/asp:tablecell

/asp:tablerow

新手關(guān)于VB.net的問題

您好,在Visual Basic.NET中,是沒有像這樣的文件I/O操作的,一般都是通過System.IO.StreamReader和System.IO.StreamWriter類,System.IO.BinaryReader和System.IO.BinaryWriter類來讀寫文件以及利用My.Computer.FileSystem類讀寫文件,利用System.IO.Filestream類來創(chuàng)建文件,通過引用Microsoft Scripting Runtime來執(zhí)行文件(夾)和驅(qū)動(dòng)器的特殊操作,常用的是System.IO.StreamReader和System.IO.StreamWriter類。

例如說要讀取一個(gè)文件,我們可以利用System.IO.StreamReader類編寫一個(gè)方法(也就是函數(shù)),但是首先要在當(dāng)前類的開頭添加一個(gè)引用,引用名稱:System.IO,添加引用的代碼如下

Imports System.IO

添加引用之后,就在當(dāng)前類的內(nèi)部創(chuàng)建方法:

Private Function ReadFile(ByVal FileURL As String) As String

Dim sr As StreamReader = New StreamReader(FileURL)

ReadFile = sr.ReadToEnd()

sr.Close()

sr = Nothing

End Function

示例說明:

該方法是一個(gè)返回String(字符串)數(shù)據(jù)的函數(shù),F(xiàn)ileURL作為參數(shù)是用來存放需要訪問的文件的URL,當(dāng)然,要獲取一個(gè)文件的URL,就是利用這一句代碼實(shí)現(xiàn)的:

Dim sr As StreamReader = New StreamReader(FileURL)

當(dāng)獲取了URL之后,就要對文件進(jìn)行讀取操作了,然后將讀取的結(jié)果返回給方法:

ReadFile = sr.ReadToEnd()

讀取文件完畢之后,要對文件執(zhí)行關(guān)閉操作:

sr.Close()

當(dāng)然別忘了清理資源:

sr = Nothing

StreamReader類可以從流或文件中讀取字符,在創(chuàng)建StreamREader類的對象時(shí),可以指定一個(gè)流對象,也可以指定一個(gè)文件URL,創(chuàng)建對象后就可以調(diào)用他的方法,從流中讀取數(shù)據(jù),其常用方法如下:

Peek:返回下一個(gè)可用字符,但不使用它。

Read:讀取輸入流中下一個(gè)字符或一組字符并移動(dòng)流或文件指針。

ReadBlock:從當(dāng)前流中讀取最大數(shù)量字符并從index開始將數(shù)據(jù)寫入buffer。

ReadLine:從當(dāng)前流中讀取一行字符并將字符作為String返回。

REadToEnd:從流的當(dāng)前位置到末尾讀取流。

Close:關(guān)閉打開的對象,釋放資源。

注:流,一種新的數(shù)據(jù)格式,這種格式可通過System.IO命名空間下的類訪問。流用Stream類表示,所有的流都是從這個(gè)類中繼承的。流向用戶提供了一個(gè)一般的數(shù)據(jù)視圖,隱藏了操作系統(tǒng)和底層設(shè)備的實(shí)現(xiàn)細(xì)節(jié),所有的流都支持讀寫操作。在打開文件時(shí)將返回對應(yīng)的流對象,用戶可以對流對象進(jìn)行讀寫操作。

如果要對文件執(zhí)行按行讀取操作,這時(shí)就會用到枚舉,這時(shí)候,代碼就要更改一下了:

Private Function ReadFile(ByVal FileURL As String) As String

Dim sr As StreamReader = New StreamReader(FileURL)

For Each fLine As String In sr.ReadToEnd()

Line = sr.ReadLine()

ReadFile = ReadFile fLine

Next sr.ReadLine

sr.Close()

End Function

示例說明:

For Each…Next:派生于For…Next循環(huán),用于枚舉一系列對象中的成員,而這些對象組成集合,如果集合中至少存在一個(gè)元素,程序就會靜茹For Each塊執(zhí)行。其格式如下:

For Each 元素 [As 數(shù)據(jù)類型] In 元素集合

[循環(huán)體]

[Exit For]

[循環(huán)體]

Next [元素]

比如:

Dim CountNumber As ULong = 0

Dim FolderName() As String = New String() {" "}

For Each strFolder As String In My.Computer.FileSystem.GetDirectories("C:\")

CountNumber = CountNumber + 1

ReDim Preserve FolderName(1 To CountNumber)

FolderName = strFolder

Next strFolder

注:My.Computer.FileSystem.GetDirectories:主要用來枚舉指定目錄的子文件夾。

Preserve:主要用來避免重定義數(shù)組而不損失數(shù)組元素的原有數(shù)據(jù)。

另外,利用My.Computer.FileSystem也可以實(shí)現(xiàn)文件的讀取,其代碼如下:

Dim fpReader As String = My.Computer.FileSystem.ReadAllText("C:\test.txt")

示例說明:

定義一個(gè)字符串變量利用My.Computer.FileSystem.ReadAllText來實(shí)現(xiàn)對“C:\test.txt”的讀取。

如果是已經(jīng)編碼的文本,則可以使用My.Computer.FileSystem對象中的ReadAllText方法并提供路徑和文件編碼類型,將文本寫入字符串變量中,例如:

Dim fpReader As String = My.Computer.FileSystem.ReadAllText("C:\test.txt", _

System.Text.Encoding.UTF32)

當(dāng)然,System.Text.Encoding的成員不止一個(gè),它還有如下成員:

System.Text.Encoding.UTF8

System.Text.Encoding.UTF16

System.Text.Encoding.ASCII

System.Text.Encoding.Unicode

這些是常見的成員,也是主要的成員。

另外,利用My.Computer.Filesystem類無法實(shí)現(xiàn)文件的行操作,還有,如果您的計(jì)算機(jī)未安裝完整的Microsoft.NET Framework Runtime,則無法實(shí)現(xiàn)這種操作!

寫入文件的操作同樣簡單,Visual Basic.NET 允許用戶使用StreamWriter來對文件寫入內(nèi)容,下面就讓我們來創(chuàng)建一個(gè)子例程,來實(shí)現(xiàn)文件的寫入:

Private Sub WriterFile(ByVal FileURL As String, ByVal FileCon As String)

Dim sr As StreamWriter = New StreamWriter(FileURL)

sr.Write(FileCon)

sr.Close()

sr = Nothing

End Sub

示例說明:

sr.Write(FileCon):將FileCon寫入文件FileURL之中。

另外,StreamWriter常用方法如下:

WriteLine:向流中寫入一行,后面跟結(jié)束符。

Write:寫入流,向流對象中寫入字符并移動(dòng)流或文件指針。

Close:關(guān)閉打開的對象,釋放資源。

附:Visual Basic 6.0文件操作解說:

打開: Open 文件名 For Input | Output | Append As [#]文件號

Input打開讀入,文件不存在報(bào)錯(cuò)。Output打開覆蓋寫入,文件不存在則創(chuàng)建。Append打 開追加寫入,文件不存在則創(chuàng)建。

讀: Line Input #文件號, 字符串變量

讀一行數(shù)據(jù)存入字符串變量,數(shù)據(jù)包括空格、Tab、等,不包括回車符和換行符,所以要顯示文件的換行效果,要手動(dòng)添加回車符和換行符(vbCrLf)

Input #文件號, 變量1[, | ;] [變量2]...

這種方式可以存入多個(gè)變量,而且變量類型不限于字符串型。

寫: Print #文件號, 參數(shù)1[, | ;] [參數(shù)2]...

將各參數(shù)逐個(gè)寫入文件。參數(shù)間用逗號隔開時(shí),文件中相應(yīng)插入多個(gè)空格;用分號隔開時(shí),插入一個(gè)空格。可以用Spc(n)、Tab(n)等進(jìn)行排版。

Write #文件號, 參數(shù)1[, | ;] [參數(shù)2]...

這種寫入方式將自動(dòng)添加界定符,對不同參數(shù)的類型加以界定。

Visual Basic 6.0文件操作函數(shù):

Seek: Seek(文件號)

返回文件正在訪問的位置,返回值為長整型。對順序文件和二進(jìn)制文件,返回值以字節(jié)為單位;對隨機(jī)訪問文件,返回值以記錄號為單位。

Seek: Seek [#]文件號,位置

定位文件到指定位置。位置單位同上所述。

Input: Input (字節(jié)數(shù),[#]文件號)

從文件的訪問當(dāng)前位置讀入指定字節(jié)數(shù)的數(shù)據(jù)。僅適用于順序文件和二進(jìn)制文件。

EOF: EOF(文件號)

判斷文件的訪問位置是否在文件尾,如果是,返回True,否則,返回False。

LOF: LOF(文件號)

返回文件長度,單位為字節(jié)。

FileLen: FileLen (文件名)

返回文件名對應(yīng)文件的長度,單位是字節(jié)。該函數(shù)取磁盤文件標(biāo)識中的長度,即文件打開前的長度,可以取未打開的文件長度。

GetAttr: GetAttr (Pathname)

返回指定文件或文件夾的屬性。

FileAttr: FileAttr (文件號)

返回文件號對應(yīng)文件的打開方式。

GetDateTime: GetDateTime (Pathname)

返回文件被創(chuàng)建或修改的最后日期和時(shí)間。

Free: FreeFile[(0|1)]

返回未被占用的文件號,F(xiàn)ree或Free(0)返回1~255之間未占用的文件號,F(xiàn)ree(1)返回256~511之間未占用的文件。

Dir: Dir (Pathname [,Attributes])

測試指定路徑是否有某文件,Attributes附加文件屬性條件,取值vbNormal、vbReadOnly、vbHidden、vbSystem、vbVolume、vbDirectory。

Kill: Kill (文件名)

刪除指定文件,文件名可包含路徑。

FileCopy: FileCopy 源文件,目標(biāo)文件

拷貝文件。

Name: Name 舊文件名 As 新文件名

文件重命名。前后路徑不一致時(shí),操作為移動(dòng)文件并重命名。

MkDir: MkDir path

新建文件夾。

RmDir: Rmdir path

刪除文件夾。

ChDrive: ChDrive Drive

改變當(dāng)前驅(qū)動(dòng)器 ChDrive "D"

CurDir: CurDir [(driver)]

返回當(dāng)前工作路徑,指定driver則返回目標(biāo)驅(qū)動(dòng)器的當(dāng)前工作路徑。

舉例:

'新建文件,并寫入數(shù)據(jù),關(guān)閉

Open "a.txt" For Output As #1

Print #1, "ABCDEFG"; vbCrLf; "HIJK"

Close #1

'打開文件,并全部寫入新文件,關(guān)閉

Open "a.txt" For Input As #2

Open "b.txt" For Output As #3

Dim str As String

While (Not EOF(2))

Line Input #2, str

Print #3, str

Wend

Close

注:關(guān)于Visual Basic 6.0的文件操作資料來自于

如果您覺得我的回答幫助了您解決難題,別忘了采納哦,如果我的回答未能解決您的問題,您可以在互聯(lián)網(wǎng)上尋找更多的解決方案!

VB.net調(diào)用Resources資源的問題?

資源這個(gè)東西很抽象,你要把它寫進(jìn)文件里頭

比如說,寫入exe同目錄吧

If Not System.IO.File("ltlstj.tif") Then

My.Resources.流體流速推薦.tif.Save("ltlstj.tif")

End If

PicPath = Application.StartUpPath "\ltlstj.tif"

然后再進(jìn)行調(diào)用

手機(jī)寫的,難免有錯(cuò)誤,不好意思

VB.net怎樣保存文件

保存文件的步驟為:

關(guān)閉流,特別是寫入流

關(guān)閉并保存文件

示例代碼如下:

Imports?System.Windows.Forms

Imports?System.IO

Imports?System.Text

Sub?SaveFileDemo()

'打開文件。如果文件不存在則創(chuàng)建新的文件

Dim?myFile?As?New?IO.FileStream("d:\data.txt",?_

FileMode.OpenOrCreate,?_

FileAccess.Write)

'在文件末尾添加一行?

Dim?tw?As?New?StreamWriter(myFile)

myFile.Seek(0,?SeekOrigin.End)

tw.WriteLine("白刃格斗英雄連英模部隊(duì)方隊(duì)亮相閱兵")

'關(guān)閉流

tw.Close()

'關(guān)閉文件并保存文件

myFile.Close()

End?Sub

網(wǎng)頁標(biāo)題:vb.net中seek vbnet web
網(wǎng)站路徑:http://m.rwnh.cn/article46/hiidhg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站網(wǎng)站導(dǎo)航、域名注冊、軟件開發(fā)、網(wǎng)站建設(shè)Google

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)
平果县| 建德市| 繁峙县| 鄂尔多斯市| 保定市| 朝阳区| 柳河县| 淄博市| 马山县| 册亨县| 麻阳| 通河县| 上虞市| 边坝县| 康平县| 什邡市| 云南省| 沙洋县| 忻城县| 漯河市| 永安市| 崇礼县| 光泽县| 新化县| 宝兴县| 平乐县| 乌鲁木齐市| 丹东市| 松江区| 浦东新区| 赫章县| 博湖县| 股票| 乐清市| 黄平县| 大埔区| 鲜城| 东阳市| 武安市| 拜泉县| 玛沁县|