-1
我用tlv格式讀取xml文件,xml文件有593字節,我讀下面的代碼。第一個512字節爲真,但其餘字節爲假。我讀剩餘字節是00.用tlv格式讀取xml文件
int fd,ret;
unsigned char *filebuffer[6400];
fd = open("filename" , O_RDONLY);
printf("file open return value : %d \n", fd);
if (fd == -1)
{
printf("Error in openning the file!\n");
exit(0);
}
//read the file
int i = 0;
do {
ret = read(fd,&filebuffer[i],512);
printf("file read return value : %d \n", ret);
if (ret == -1)
{
printf("Error in reading!\n");
exit(0);
}
i += ret;
printf("i = %d, ret = %d",i,ret);
} while (ret > 0);
int k;
char tmp[6400];
memcpy(tmp,filebuffer,i);
printf("file buffer\n");
for (k = 0; k < i; ++k) {
printf("%02x",tmp[i]);
}
close(fd);}
我填充文件緩衝與我正在讀取XML文件。 filebuffer示例; filebuffer:1F0583212 .....(512 byte)000000