将文件转成16进制过程

 1 #include <stdio.h>
 2 #include <string.h>
 3 char* path = "file.lua";
 4 
 5 int main(void)
 6 {
 7     FILE* fp;  
 8     fp=fopen(path,"a+");  
 9     if(fp == NULL)  
10         return; 
11     
12     int size = 100000;
13     unsigned char buffer[size];
14 
15         fread(buffer,sizeof(unsigned char),size,fp);
16     fclose(fp);
17    
18     char* c = buffer;
19    
20     int len = strlen(c);
21     int i;
22     int col = 1;
23     for(i = 0; i< len; i++)
24     {
25         char a;
26         a = *c;
27         if(col == 15)
28         {
29             col = 1;
30             printf("0x%02x,
", a);
31         }
32         else
33         {
34             printf("0x%02x, ", a);
35             col++;
36         }
37         *c++;
38     }
39 }


在编写脚本的过程中,我们希望重点脚本文件不被其他人查看,可以将脚本,编制成16位的字符,加载到缓存中执行,然后打包成exe,这样一来,只要非重要的脚本能够被查看,在项目开发的过程中,

如果有新人加入,希望能屏蔽脚本中重点代码的实现过程,可以通过该方法。

转载请注明出处,from 博客园 HemJohn,   http://i.cnblogs.com/EditPosts.aspx?opt=1

原文地址:https://www.cnblogs.com/HemJohn/p/5708640.html