Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > 源码示例

二进制合并与拆分图片实例演示(源码)

时 间:2010-05-03 11:20:25
作 者:江羽   ID:3967  城市:南昌
摘 要:主要演示对JPG图片的二进制方法合并与拆分
正 文:

实例说明:
1、主要演示对JPG图片的二进制方法合并与拆分,你也可以根据实例做相应修改,可以试验一下其它后缀文件的合并与拆分
2、试验前最好做好相关文件备份,以免造成重要文件损失
3、你可以根据本实例代码原理,了解相关二进制操作文件方法

以下是合并及拆分公用代码:
'----------------------------------------------------------------------------------
'程序功能:实现文件的合并
'变量说明:strFileName1   As String    第一个文件及完整路径
'          strFileName2   As String    第二个文件及完整路径
'          strMergeFileName As String    合并后的文件完整路径
'例    程:sMergeFile (C:\File1.txt ,C:\File2.txt ,C:\PutFile.txt)
'-------------------------------------------------------------------------
Public Sub sMergeFile(strFileName1 As String, strFileName2 As String, strMergeFileName As String)
    Dim aryContent() As Byte '用来读取文件的数组,每次读取前要重定义
   
   '注意下面三个Open语句都是用Binary模式打开的,也就是进行二进制的读写
    Open strMergeFileName For Binary As #3
    Open strFileName1 For Binary As #1
    Open strFileName2 For Binary As #2

    Put #3, , LOF(1) '取得第一文件的长度,并把它写入到合并文件的文件头中
    Put #3, , LOF(2) '取得第二文件的长度,并写入到合并文件的文件头中
   
    ReDim aryContent(LOF(1) - 1) '重定义数组,为读取文件做准备
    Get #1, , aryContent()                 '取得第一文件的内容到数组
    Put #3, , aryContent()                 '把第一文件的内容写到合并文件中
   
    ReDim aryContent(LOF(2) - 1) '同上
    Get #2, , aryContent()
    Put #3, , aryContent()

    '关闭文件
    Close #1
    Close #2
    Close #3
   
    MsgBox "所选图片文件合并完成!", vbOKOnly + vbInformation, "江羽提示:"
End Sub

'------------------------------------------------------------------------------------
'程序功能:实现文件的拆分
'变量说明:strFileName1     As String    拆分后第一个文件名
'          strFileName2     As String    拆分后第二个文件名
'          strSplitFileName As String    预拆分的文件名及完整路径
'例    程:sSplitFile(C:\PutFile.txt ,C:\File1.txt ,C:\File2.txt)
'------------------------------------------------------------------------------------
Public Sub sSplitFile(strSplitFileName As String, strFileName1 As String, strFileName2 As String)
    Dim aryContent() As Byte
    Dim lngLOF(1) As Long '存放从文件头取得的两个文件的长度
   
    Open strSplitFileName For Binary As #3
   
    Get #3, , lngLOF(0) '取得第一文件的长度
    Get #3, , lngLOF(1) '第二文件的长度
   
    Open strFileName1 For Binary As #1
    Open strFileName2 For Binary As #2
   
    ReDim aryContent(lngLOF(0) - 1) '用第一文件的长度重定义数组,为读取第一文件做准备
    Get #3, 9, aryContent()                    '从第9字节,即文件后面开始读取第一文件的内容
    Put #1, , aryContent()                      '把取得的内容写入到拆分文件中

    ReDim aryContent(lngLOF(1) - 1)
    Get #3, 9 + lngLOF(0), aryContent() '从第9字节再加上第一文件的长度处开始读取第二文件的内容
    Put #2, , aryContent
   
    Close #1
    Close #2
    Close #3
   
    MsgBox "所选图片文件拆分完成!", vbOKOnly + vbInformation, "江羽提示:"
End Sub

 实例样本下载:点击下载此附件



Access软件网QQ交流群 (群号:483923997)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助