⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 txt2lib.cpp

📁 SZ328串行通讯驱动及应用开发包,为2个CPU间协议通讯应用实例.
💻 CPP
字号:
#include "stdio.h"
#include "string.h"
#include "conio.h"
#include "io.h"

#define		MAX_FILENAME_LEN	100
char txt2lib(void);

char src_filename[][MAX_FILENAME_LEN]=
{
	//	"buick\\上海通用故障码.txt",
	//	"海马全部故障码.txt",
	"vw.txt",
	//	"HD_ENG.TXT","HD_AT.TXT","HD_ABS.TXT","HD_SRS.TXT","HD16_ENG.TXT","HD16_AT.TXT","HD16_ABS.TXT","HD16_SRS.TXT",
};

//char dst_filename[] = "HONDA.LIB";
//char dst_filename[] = "HNMAZDA.LIB";
 char dst_filename[] = "VW.LIB";
// char dst_filename[] = "sh_gm.LIB";


	


char txt2lib()
{


	FILE *fp1,*fp2;
	unsigned char xor; 

	unsigned char byte;
	char ptr[100];
	unsigned short i,file_num;
	unsigned long offset,filesize;
	unsigned char xor_offset;

	file_num = sizeof(src_filename)/MAX_FILENAME_LEN;
	fp2=fopen(dst_filename,"wb");
	fseek(fp2,0,SEEK_SET);    /*write the pointer of the content*/
	if(file_num>0)
	//if(file_num>1)
	{
		fwrite(ptr,1,(file_num+1)*4,fp2); //leave space for position index
	}

	for(i=0;i<file_num;i++)	
	{
		//if(file_num>1) 
		if(file_num>0) 
		{
			offset = ftell(fp2);
			fseek(fp2,i*4,SEEK_SET);
			fwrite(&offset,1,4,fp2); //leave space for position index
			fseek(fp2,offset,SEEK_SET);
		}
		
		fp1=fopen(src_filename[i],"rb");
		if(fp1==NULL)
		{
			printf("Can't find file: %s",src_filename[i]);
			getch();
			return 0;
		}

		fseek(fp1,0,SEEK_END);
		filesize =  ftell(fp1);
		xor_offset = (unsigned char)(offset + filesize);
		fseek(fp1,0,SEEK_SET);    /*write the pointer of the content*/
		while(1)
		{
			fread(&byte,1,1,fp1);
			if(feof(fp1))
				break;
			xor = (unsigned char)offset;
			xor += xor_offset;
			xor = ( (xor<<4) | (xor&0x0f) );
			xor += 'Y';
			byte ^= xor;

			fwrite(&byte,1,1,fp2);
			offset++;
		}
		fclose(fp1);
	}
	if(file_num>0) 
	{
		offset = ftell(fp2);
		fseek(fp2,i*4,SEEK_SET);
		fwrite(&offset,1,4,fp2); 
		fseek(fp2,offset,SEEK_SET);
	}
	fclose(fp2);
	printf("File has been processed successful,press any key to return");
	getch();
	return 1;
}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -