瓦格曼 发表于 2016-4-19 13:00:01

小甲鱼视频的图片文件合成,合成图片后修改后缀名打不开

// 图片文件合成器.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include<stdlib.h>
#include<iostream>
using namespace std;

int main()
{       
        FILE *f_pic, *f_file, *f_finish;
        char ch, pic_name, file_name, finish_name;
        cout << "请输入需要合成的图片和文件的名称:" << endl;

        cout << "图片名:";
        cin >> pic_name;
        cout << "文件名:";
        cin >> file_name;
        cout << "新文件名:";
        cin >> finish_name;
        if ((f_pic = fopen(pic_name, "rb"))==NULL)
                {
                        cout << "打开图片失败";
                        exit(0);
                }
        if ((f_file = fopen(file_name, "rb"))==NULL)
        {
                cout << "打开文件失败";
                exit(0);
        }
        if ((f_finish = fopen(finish_name, "wb"))==NULL)
        {
                cout << "打开新文件失败";
                exit(0);
        }

        while (!(feof(f_pic)))                //feof:文件结束则返回非0,未结束则返回0
        {
                ch = fgetc(f_pic);
                fputc(ch, f_finish);
        }
        fclose(f_pic);
        while (!(feof(f_file)))       
        {
                ch = fgetc(f_file);
                fputc(ch, f_finish);
        }
        fclose(f_file);
        fclose(f_finish);
        system("pause");
    return 0;
}

n0noper 发表于 2016-4-20 11:51:40

大哥,人家rar是个压缩文件,是人家公司用一系列的压缩算法计算得到的。

而你上面的程序只是将两个文件的内容简单的写到一起,怎么可能符合人家rar的解压格式?

就好像,你简单的把两种酒倒在一起,那成不了调酒师手中的鸡尾酒。

建议:你写两个txt文件,第三个也是txt文件,就可以查看是否将两个文件合并了。
PS:上边程序读写文件地方不太好,会导致写的时候多写入一个错误字符。
页: [1]
查看完整版本: 小甲鱼视频的图片文件合成,合成图片后修改后缀名打不开