言葉足らずですいません。
リストビューのデータを管理するために
#define ITEM_LEN 32
#define SUBITEM_LEN 100
char buf *
char temp[ITEM_LEN ];
....

typedef struct taghoge
{
char item[ITEM_LEN];
char subitem[SUBITEM_LEN];
int category;
.....
}ListData
という感じの構造体を
ListData listdata[255];と宣言して、ファイルから読みこんだデータを

for(i=0;i<hoge;i++) { //hogeはファイルサイズ/sizeof(listdata)
strncpy(temp,buf[0] + sizeof(listdata) * i,ITEM_LEN - 1);
 strncpy(temp[ITEM_LEN - 1],\0)
....
}
といったなんか情けない感じになってしまってまして・・・