真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

vb.net中seek vbnet web

VB.NET 怎么讀寫二進制文件,類似Open

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

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

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

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

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è)置到文件開始

' 因為不同數(shù)據(jù)類型之間的很多轉(zhuǎn)換結(jié)果都是不可解釋的,

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

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

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

' 這與寫日志文件時不同。

Do While r.BaseStream.Position r.BaseStream.Length ' 當未到達文件結(jié)尾時

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é)尾

' 因為正在寫的信息可能不適合于所選擇用于寫入的特定樣式

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

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

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)建一個二進制文件,然后使用 BinaryReader 讀取該信息。/b可以選擇不同的對象來將所需的信息寫入文件

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

請選擇要保存到二進制文件的數(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ū)動器的特殊操作,常用的是System.IO.StreamReader和System.IO.StreamWriter類。

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

Imports System.IO

添加引用之后,就在當前類的內(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

示例說明:

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

Dim sr As StreamReader = New StreamReader(FileURL)

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

ReadFile = sr.ReadToEnd()

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

sr.Close()

當然別忘了清理資源:

sr = Nothing

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

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

Read:讀取輸入流中下一個字符或一組字符并移動流或文件指針。

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

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

REadToEnd:從流的當前位置到末尾讀取流。

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

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

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

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),用于枚舉一系列對象中的成員,而這些對象組成集合,如果集合中至少存在一個元素,程序就會靜茹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也可以實現(xiàn)文件的讀取,其代碼如下:

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

示例說明:

定義一個字符串變量利用My.Computer.FileSystem.ReadAllText來實現(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)

當然,System.Text.Encoding的成員不止一個,它還有如下成員:

System.Text.Encoding.UTF8

System.Text.Encoding.UTF16

System.Text.Encoding.ASCII

System.Text.Encoding.Unicode

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

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

寫入文件的操作同樣簡單,Visual Basic.NET 允許用戶使用StreamWriter來對文件寫入內(nèi)容,下面就讓我們來創(chuàng)建一個子例程,來實現(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:寫入流,向流對象中寫入字符并移動流或文件指針。

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

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

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

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

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

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

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

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

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

將各參數(shù)逐個寫入文件。參數(shù)間用逗號隔開時,文件中相應插入多個空格;用分號隔開時,插入一個空格??梢杂肧pc(n)、Tab(n)等進行排版。

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

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

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

Seek: Seek(文件號)

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

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

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

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

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

EOF: EOF(文件號)

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

LOF: LOF(文件號)

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

FileLen: FileLen (文件名)

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

GetAttr: GetAttr (Pathname)

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

FileAttr: FileAttr (文件號)

返回文件號對應文件的打開方式。

GetDateTime: GetDateTime (Pathname)

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

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 源文件,目標文件

拷貝文件。

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

文件重命名。前后路徑不一致時,操作為移動文件并重命名。

MkDir: MkDir path

新建文件夾。

RmDir: Rmdir path

刪除文件夾。

ChDrive: ChDrive Drive

改變當前驅(qū)動器 ChDrive "D"

CurDir: CurDir [(driver)]

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

舉例:

'新建文件,并寫入數(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資源的問題?

資源這個東西很抽象,你要把它寫進文件里頭

比如說,寫入exe同目錄吧

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

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

End If

PicPath = Application.StartUpPath "\ltlstj.tif"

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

手機寫的,難免有錯誤,不好意思

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("白刃格斗英雄連英模部隊方隊亮相閱兵")

'關(guān)閉流

tw.Close()

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

myFile.Close()

End?Sub


標題名稱:vb.net中seek vbnet web
路徑分享:http://weahome.cn/article/hiidhg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部