简易文件打包程序

该博客介绍了如何创建一个简易的文件打包程序,程序将目录下的文件信息保存在打包文件中,包括文件名、大小和偏移位置。用户可以通过运行程序或指定命令行参数进行打包,打包文件默认为'files.pak'。解包程序的详细信息可在参考链接找到。
摘要由CSDN通过智能技术生成

对指定目录下面的文件进行打包。

简易解包程序参考博客另外一篇文章:
http://blog.csdn.net/yi_ming_he/article/details/77689453

打包方式:
把目录下面的文件名,文件大小,偏移位置,文件内容,以索引形式保存在打包文件中

使用方法:

1.packetfiles.exe为打包程序
2.运行时使用管理员权限
3.可以直接运行packetfiles.exe进行打包,只需要把需要打包的文件放在与packetfiles.exe同一级的input目录即可(如果没有该目录需要手动创建在把文件扔进去),生成的打包文件默认是files.pak,位于和packetfiles.exe文件同一级目录
4.另外一种打包方式是通过指定命令行参数设置打包的目录和打包后的文件路径,如下图所示:
这里写图片描述

PacketFiles.h:

#pragma once

struct MyFileData
{
    int nOffset;//文件相对于压缩包文件的偏移
    int nFileSize;//文件的Size
    int nFileNameLength;//文件名包含的字符个数
    CString strFileName;//文件名
    CString strFilePath;//文件路径,用于把文件打包进来

    MyFileData()
    {
        nOffset = 0;
        nFileSize = 0;
        nFileNameLength = 0;
    }
};

class CPacketFiles
{
public:
    CPacketFiles();
    ~CPacketFiles();

    void PacketFiles(LPCTSTR lpDir, LPCTSTR lpOutFilePath);//传入需要打包的文件夹目录

private:
    void _PathAddBackSlach(CString& strPath);
    void _GetFileInfo(LPCTSTR lpDir);
    void _GetPacketInfo();
    vo
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值