#include <stdio.h>
#define OUTPUT_NAME "xp_start_wav"
void main()
{
int i, ret, start = 1;
unsigned char buffer[24];
FILE *fp, *fp2;
fopen_s(&fp, "C:\\WINDOWS\\Media\\Windows XP 启动.wav", "rb");
if (fp != NULL)
{
fseek(fp, 0, SEEK_END);
ret = ftell(fp);
fseek(fp, 0, SEEK_SET);
fopen_s(&fp2, OUTPUT_NAME ".c", "w");
if (fp2 != NULL)
{
fprintf(fp2, "__attribute__((aligned)) const unsigned char " OUTPUT_NAME "[%d] = {", ret);
while (ret = fread(buffer, 1, sizeof(buffer), fp))
{
for (i = 0; i < ret; i++)
{
if (i == 0)
{
if (start)
start = 0;
else
fprintf(fp2, ", ");
fprintf(fp2, "\n ");
}
else
fprintf(fp2, ", ");
fprintf(fp2, "0x%02x", buffer[i]);
}
}
fprintf(fp2, "\n};\n");
fclose(fp2);
}
fclose(fp);
}
else
printf("failed\n");
}