对于我的任务,我需要使用fread/fwrite.我写
#include <stdio.h>
#include <string.h>
struct rec{
int account;
char name[100];
double balance;
};
int main()
{
struct rec rec1;
int c;
FILE *fptr;
fptr = fopen("clients.txt", "r");
if (fptr == NULL)
printf("File could not be opened, exiting program.\n");
else
{
printf("%-10s%-13s%s\n", "Account", "Name", "Balance");
while (!feof(fptr))
{
//fscanf(fptr, "%d%s%lf", &rec.account, rec.name, &rec.balance);
fread(&rec1, sizeof(rec1),1, fptr);
printf("%d %s %f\n", rec1.account, rec1.name, rec1.balance);
}
fclose(fptr);
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
clients.txt文件
100 Jones 564.90 200 Rita 54.23 300 Richard -45.00
产量
Account …
我有十六进制和一些数字的混合物,我想打印:
"\ X00\X00\X00\X00\X00\X00\X00\x9b\X00\X00\X00\xebS\XC3\X90\X08\X00\X00\X00 \固定的\ x9b\xbcX\X00\X00\X00\X00\X00\X00\X00\X00\x820416e9c05a9942f67d1ee0b53642e79fae45af47a3afceb6a21a94c8487e1290645d789253fb05a1a8ee529b2cb4de2877fbbe11aa24a64dc20450ff722e41f92d \固定的\ X18\X03\X00\X00\X00\X00\X00"
当我打印时,它将其转换为ASCII,我如何保持包括斜杠标志的格式.我试过了
''.join(hex(ord(i))for in binascii.unhexlify('deadbeef'))
但它最终会删除反斜杠,或者如果我尝试添加它,它会添加到中间的那些.我只想打印这个,我可以在C中做到这一点,为什么在Python中这么难!