找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
查看: 3394|回复: 0

[备份]VB6读写文本文件和二进制文件

[复制链接]

858

主题

2638

回帖

2

精华

管理员

此生无悔入华夏,  长居日耳曼尼亚。  

积分
36138
发表于 2012-2-2 10:48:48 | 显示全部楼层 |阅读模式

  1. Public Function ReadText(ByVal szFileName As String) As String
  2.     Dim szTextCodes As String
  3.     Open szFileName For Binary As #1
  4.         szTextCodes = StrConv(InputB(LOF(1), 1), vbUnicode)
  5.     Close #1
  6.     ReadText= szTextCodes
  7. End Function

  8. Public Sub SaveText(ByVal szFileName As String, ByVal sz As String)
  9.     On Error Resume Next
  10.     Open szFileName For Output As #1
  11.         Print #1, sz
  12.     Close #1
  13. End Sub

  14. Public Function ReadBin(ByVal strFileName As String, Optional ByVal lngStartPos As Long = 1, Optional ByVal lngFileSize As Long = -1) As Byte()
  15.     On Error Resume Next
  16.     Dim FilNum As Integer
  17.     FilNum = FreeFile
  18.     Open strFileName For Binary As #FilNum
  19.     If lngFileSize = -1 Then
  20.         ReDim ReadBin(LOF(FilNum) - lngStartPos)
  21.     Else
  22.         ReDim ReadBin(lngFileSize - 1)
  23.     End If
  24.     Get #FilNum, lngStartPos, ReadBin
  25.     Close #FilNum
  26. End Function

  27. Public Function SaveBin(ByVal strFileName As String, bytData() As Byte, Optional ByVal lngStartPos As Long = -1, Optional ByVal OverWrite As Boolean = True)
  28.     On Error Resume Next
  29.     Dim FilNum As Integer
  30.     FilNum = FreeFile
  31.     If OverWrite = True And Dir(strFileName) <> "" Then
  32.         Kill strFileName
  33.     End If
  34.     Open strFileName For Binary As #FilNum
  35.     If lngStartPos = -1 Then
  36.         Put #FilNum, LOF(FilNum) + 1, bytData
  37.     Else
  38.         Put #FilNum, lngStartPos, bytData
  39.     End If
  40.     Close #FilNum
  41. End Function
复制代码
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

快速回复 返回顶部 返回列表