vb二进制文件读写代码|vbnet如何读写二进制文件 有各种类型的变量

1. 如何用vb读写以二进制形式读写文件

使用随即方式读写,数据类型可以这样(如果都是第一个和第六个为长整形):type xxx p1 as long p2 as single p3 as single p4 as single p5 as single p6 as longend typedim vxxx as xxx打开文件open filepath for access as filenum len=lenb(vxxx)读写:使用put和getopen filename$ for binary #filenumber'以二进制方式建立或者打开文件,然后再用put #filenumber,postion,inputdata'写入数据inputdataget #filenumber,postion,outputvarible'读出数据到outputvarible这是我对二进制文件写的一段源码,你自已分析吧 '***************************************************************************************' 目的: 将文件保存到数据库' 方法: DAO' 输入:'***************************************************************************************Public Sub SaveDataToRs(ByVal sGtXs As String)Dim i As IntegerDim myRs As Recordset, mySql As StringDim DataFile As IntegerDim Fragment As Integer, Fl As Long, Chunks As IntegerDim Chunk() As ByteConst ChunkSize As Integer = 1024mySql = "select 图片 from 杆塔型式表 where 杆塔型式 like '" & sGtXs & "'"Set myRs = myDb.OpenRecordset(mySql, dbOpenDynaset)DataFile = 1Open sFileName For Binary Access Read As DataFileFl = LOF(DataFile)If Fl = 0 ThenClose DataFileSet myRs = NothingMsgBox "文件长度为零!保存数据没有成功"Exit SubEnd IfmyRs.EditChunks = Fl ChunkSizeFragment = Fl Mod ChunkSizeReDim Chunk(Fragment)Get DataFile, , Chunk()myRs!图片.AppendChunk Chunk()ReDim Chunk(ChunkSize)For i = 1 To ChunksGet DataFile, , Chunk()myRs!图片.AppendChunk Chunk()Next iClose DataFilemyRs.UpdatemyRs.CloseSet myRs = NothingEnd Sub '***************************************************************************************' 目的: 从数据库中读取数据(二进制)写入文件' 方法: ADO' 输入:'***************************************************************************************Public Sub ReadDataFromRs(ByVal sGtXs As String) '提取到文件Dim cnn1 As New ADODB.ConnectionDim rs As New ADODB.RecordsetDim strCnn As StringDim DataFile As IntegerDim Fragment As Integer, Fl As Long, Chunks As IntegerDim Chunk() As ByteDim lngOffset As Long, lngTotalSize As LongDim strChunk As StringConst ChunkSize As Integer = 1024Const rsField As String = "图片" ' 打开连接。strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data source=" & App.Path & "pwmis.mdb;" 'SQL 连接为: strCnn = "Provider=sqloledb;" & "Data Source=srv;Initial Catalog=pubs;User Id=sa;Password=; "cnn1.Open strCnnrs.Open "select 图片 from 杆塔型式表 where 杆塔型式 like '" & sGtXs & "'", cnn1 If Not rs.EOF ThenDataFile = 1Open App.Path & "temp.tmp" For Binary Access Write As DataFilelngTotalSize = rs.Fields(rsField).ActualSizeChunks = lngTotalSize ChunkSizeFragment = lngTotalSize Mod ChunkSizeReDim Chunk(ChunkSize)Chunk() = rs.Fields(rsField).GetChunk(ChunkSize)Put DataFile, , Chunk()lngOffset = lngOffset + ChunkSizeDo While lngOffset < lngTotalSizeChunk() = rs.Fields(rsField).GetChunk(ChunkSize)Put DataFile, , Chunk()lngOffset = lngOffset + ChunkSizeLoopClose DataFileEnd Ifrs.CloseSet rs = NothingEnd Sub

2. vb.net 二进制读取文件

VB.NET打开二进制文件用fileopen完成,打开二进制文件的形式为:openmode.binary读取二进制文件用的是fileget方法,写入二进制文件用的是fileput方法。应用示例:将一批随机数保存在一个dat文件中,然后再将其提取到文本框中。二进制文件的读写一批随机数的存取,程序为:Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim x, i, fn As Integer Dim s As String = "" fn = FreeFile() FileOpen(fn, "d:\data.dat", OpenMode.Binary) For i = 1 To 8 x = Int(Rnd() * 100) s = s + Str(x) FilePut(fn, x) Next FileClose(fn) TextBox1.Text = sEnd Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Dim x, fn As Integer Dim s As String = "" fn = FreeFile() FileOpen(fn, "d:\data.dat", OpenMode.Binary) Do While Not EOF(fn) FileGet(fn, x) s = s + Str(x) + " " Loop FileClose(fn) TextBox1.Text = sEnd Sub

3. 在VB中,如何用二进制访问方式把文件中的内容读取到字符串中,代码如何写出,请指导,谢谢

以二进制方式打开文件:Open “文件名” For Binary As #1有一问题需要注意:读取非常讲究,与内容有关。如果文件内容是字符串,那么读取变量定义一个指定长度的字符串变量;如果文件内容是数据, 那么你必需知道这些数据的储存方式,再定义好变量后读取数据。当然,你也可以定义一个与文件长度一样的BYTE类型数据变量,一次读取全部文件数据,但,显示数据就得另想办法了。

4. vb.net如何读写二进制文件 有各种类型的变量

使用My命名空间例子如下: Dim myData() As Byte myData = System.Text.Encoding.Unicode.GetBytes("<html><head></head><body>Hello World!</body></html>") My.Computer.FileSystem.WriteAllBytes("c:\helloworld.html", myData, True) '写入文件 myData = My.Computer.FileSystem.ReadAllBytes("c:\helloworld.html") ‘读专取属文件

5. 如何用VB调用自定义资源文件,如何进行二进制文件的读写

单击菜单“外接程序”“外接程序管理器…”,选择“VB 6 资源编辑器”,选中窗口右下部分“加载行为”的“加载/卸载”的复选框,单击“确定” (如果找不到“VB 6 资源编辑器”,那么你的VB软件可能没这个功能,最好换一个VB软件试试) 单击工具栏上的"VB资源编辑器"按钮(由一堆绿色方块组成的那个图标),这时打开"VB资源编辑器"窗口 单击"添加自定义资源…"按钮(从右边数第二个),选择a.exe,打开 单击"保存"按钮,保存文件后(假设保存为"工程1.RES"),就可以关闭"VB资源编辑器"窗口了,这时工程资源管理器中有一个"相关文档",展开后就能看到"工程1.RES" 在Form_Load()中添加以下代码 Dim arr() As Byte arr = LoadResData(101, "CUSTOM") Open App.Path & "\a.exe" For Binary As #1 Put #1, , arr Close #1 生成程序c.exe,运行后就在c.exe所在的文件夹中产生文件a.exe直接运行(不生成exe)也可以产生文件a.exe

6. 如何用VB调用自定义资源文件,如何进行二进制文件的读写

单击菜单“外接程序”“外接程序管理器…”,选择“VB6资源编辑器”,选中窗口右下部分“加载行为”的“加载/卸载”的复选框,单击“确定”(如果找不到“VB6资源编辑器”,那么你的VB软件可能没这个功能,最好换一个VB软件试试)单击工具栏上的"VB资源编辑器"按钮(由一堆绿色方块组成的那个图标),这时打开"VB资源编辑器"窗口单击"添加自定义资源…"按钮(从右边数第二个),选择a.exe,打开单击"保存"按钮,保存文件后(假设保存为"工程1.RES"),就可以关闭"VB资源编辑器"窗口了,这时工程资源管理器中有一个"相关文档",展开后就能看到"工程1.RES"在Form_Load()中添加以下代码Dimarr()AsBytearr=LoadResData(101,"CUSTOM")OpenApp.Path&"\a.exe"ForBinaryAs#1Put#1,,arrClose#1生成程序c.exe,运行后就在c.exe所在的文件夹中产生文件a.exe直接运行(不生成exe)也可以产生文件a.exe

7. 用VB如何逐字节读写二进制文件

下面的示例代码是逐字节读取一个二进制文件(1.dat),与一个固定数值(比如&H72)进行异或(Xor)后再逐字节写入另一个文件(2.dat)。这其实就是一个简单的文件加密的过程。

PrivateSubForm_Click()'点击窗体运行DimbAsByteOpen"d:mp1.dat"ForBinaryAs#1Open"d:mp2.dat"ForBinaryAs#2DoGet#1,,bIfNotEOF(1)ThenPut#2,,bXor&H72LoopUntilEOF(1)CloseMsgBox"运行完毕"EndSub

解密过程也很简单,只要把代码中的两个文件名互相对换,其他代码不变,即可。

8. 用VB如何逐字节读写二进制文件

下面的示例代码是逐字节读取一个二进制文件(1.dat),与一个固定数值(比如&H72)进行异或(Xor)后再逐字节写入另一个文件(2.dat)。这其实就是一个简单的文件加密的过程。Private Sub Form_Click() '点击窗体运行Dim b As ByteOpen "d:\tmp\1.dat" For Binary As #1Open "d:\tmp\2.dat" For Binary As #2Do Get #1, , b If Not EOF(1) Then Put #2, , b Xor &H72Loop Until EOF(1)CloseMsgBox "运行完毕"End Sub解密过程也很简单,只要把代码中的两个文件名互相对换,其他代码不变,即可。

9. vb 二进制文件读写

Dim bytes() As Bytedim lLength as LongOpen "c:\main.exe" For Binary As #1 '读取字节lLength=LOF(1)ReDim bytes(1 To lLength) As ByteGet 1, , bytesClose #1'将文件以十六进制方式输出到Text1中,这个过程很耗时,130K的文件大概需要2分钟,而且越到后面速度越慢Dim strTmp As StringFor i = 1 To lLength strTmp = strTmp & " " & Hex(bytes(i))DoEventsNextText1.Text = strTmpOpen "d:\abcd.exe" For Binary As #1 '将字节转存Put 1, , bytesClose #1End Sub


赞 (0)