下面是我從 https://opensvn.csie.org/pttbbs/trunk/ 找到的 FileHeader
並且計算其長度如下:
#define IDLEN 12 /* Length of bid/uid */
#define TTLEN 64 /* Length of title */
#define FNLEN 28 /* Length of filename */
typedef struct fileheader_t
{ /* 128 bytes */
───────────────────────────────────────
型態 名稱 長度 解釋
───────────────────────────────────────
01 char filename[FNLEN] 28 ( 1~ 28)
02 time4_t modified 2 ( 29~ 30)
03 char pad 1 ( 31~ 31)
04 char recommend 1 ( 32~ 32)
05 char owner[IDLEN + 2] 14 ( 33~ 46)
06 char date[6] 6 ( 47~ 52)
07 char title[TTLEN + 1] 65 ( 53~117)
08 char pad2 1 (118~118)
09 union multi 8 (119~126)
10 unsigned char filemode 1 (127~127)
11 char pad3[3] 1 (128~128)
───────────────────────────────────────
} PACKSTRUCT fileheader_t
───────────────────────────────────────
有一個地方我覺得怪怪的,
我對照了一下信件備份中的 .DIR 檔,發現作者的欄位好像是從位置 35 開始的...
請問為甚麼會這樣呢?? 是我算錯了嗎???
另外再問一下上面每一個變數的功用以及應該要如何讀取。 謝謝。 ^_^