• 大小: 5KB
    文件类型: .c
    金币: 1
    下载: 0 次
    发布日期: 2021-06-08
  • 语言: 其他
  • 标签: dat转bmp  

资源简介

16进制dat数据转.bmp位图文件图片 源码: //dat数据转换为bmp图片(位图),并存入到指定名称的图片; //dat数据(my.dat)与当前程序文件在同一文件夹,"my.dat"为包含文件头的完整的位图数据,可以下载参考我的另外一个文档"bmp_dat.c" //运行参考:./main_a outfile.bmp //程序是本人自己写的,有实测可以正常查看转换后的图片(前提是保证之前的.dat数据没有问题),详见代码

资源截图

代码片段和文件信息


//dat数据转换为bmp图片(位图)并存入到指定名称的图片;
//dat数据(my.dat)与当前程序文件在同一文件夹“my.dat“为包含文件头的完整的位图数据可以下载参考我的另外一个文档“bmp_dat.c“
//运行参考:./main_a outfile.bmp
//程序是本人自己写的(chengjian815)有任何与程序或者图像相关的疑问欢迎留言

#include 
#include 
#include 



//将带完整文件头的data数组转为bmp图片
#define HI 1
unsigned char buf[] =
{
#include “my.dat“ //“my.dat“为要转的完整的dat数据(包含文件头)
};
int main_1(int s32Argc char* pszArgv[])
{
printf(“s32Argc:%d pszArgv[]: [%s %s]\n“s32ArgcpszArgv[0]pszArgv[1]);
FILE *outfp=fopen(pszArgv[1]“wb“);

//long int biSizeImage=24002+54;
long int bufsize=sizeof(buf);
//printf(“bufsize:%ld biSizeImage:%ld\n“bufsizebiSizeImage);
printf(“bufsize:%ld\n“bufsize);

fwrite(buf 1 bufsize outfp);

return 1;
}




//==============================================下面是没有用的东西
int main_2(int s32Argc char* pszArgv[])
{
printf(“s32Argc:%d pszArgv[]: [%s %s]\n“s32ArgcpszArgv[0]pszArgv[1]);
//FILE *fp=fopen(pszArgv[1]“rb“);
FILE *outfp=fopen(pszArgv[1]“wb“);

/*unsigned char buf_head[] =
{
0x42 0x4d 0x36 0xa3 0x02 0x00 0x00 0x00 0x00 0x00 0x36 0x00 0x00 0x00 0x28 0x00 
0x00 0x00 0x40 0x01 0x00 0x00 0xb4 0x00 0x00 0x00 0x01 0x00 0x18 0x00 0x00 0x00 
0x00 0x00 0x00 0xa3 0x02 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 
0x00 0x00 0x00 0x00 0x00 0x00 
};*/
#if HI
unsigned char buf_head[] =
{
0x42 0x4d 0xf8 0x5d 0x00 0x00 0x00 0x00 0x00 0x00 0x36 0x00 0x00 0x00 0x28 0x00 
0x00 0x00 0xa0 0x00 0x00 0x00 0x32 0x00 0x00 0x00 0x01 0x00 0x18 0x00 0x00 0x00 
0x00 0x00 0xc2 0x5d 0x00 0x00 0xc3 0x0e 0x00 0x00 0xc3 0x0e 0x00 0x00 0x00 0x00 
0x00 0x00 0x00 0x00 0x00 0x00
};
int picwidth=0xa0;
int picheight=0x32;
long int biSizeImage=24002;

#else
unsigned char buf_head[] =
{
0x42 0x4d 0x36 0xa3 0x02 0x00 0x00 0x00 0x00 0x00 0x36 0x00 0x00 0x00 0x28 0x00 
0x00 0x00 0x98 0x00 0x00 0x00 0x56 0x00 0x00 0x00 0x01 0x00 0x18 0x00 0x00 0x00 
0x00 0x00 0x20 0x66 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 
0x00 0x00 0x00 0x00 0x00 0x00
};

int picwidth=0x98;
int picheight=0x56;
long int biSizeImage=26144;
#endif

fwrite(buf_head 1 54 outfp);
fwrite(buf 1 biSizeImage outfp);

return 1;
}


//int ReadBmpHead(FILE * outfpFILE* fpchar* buf_headint* picwidthint* picheightlong int biSizeImage)
int ReadBmpHead_1(FILE * fpFILE* outfpunsigne

评论

共有 条评论

相关资源