void read_file(TreeNode *root)
{
FILE *fd;
element p;
TreeNode *n;
int ch;
n = (TreeNode *)malloc(sizeof(TreeNode));
fd = fopen("load.txt", "r");
if (fd == NULL){
printf("파일 읽기 실패\n");
return;
}
while ((ch = fgetc(fd)) != EOF){
fgets(p.word, MAX_WORD_SIZE, fd);
fgets(p.meaning, MAX_MEANING_SIZE, fd);
insert_node(&root, p);
}
fclose(fd);
}
void fsave(TreeNode *tmp, FILE fd){
if (tmp != NULL) {
fsave(tmp->left, fd);
fprintf(&fd, "%s", tmp->key.word);
fprintf(&fd, "%s", tmp->key.meaning);
fsave(tmp->right, fd);
}
}
void write_file(TreeNode *root)
{
FILE *fd;
TreeNode *tmp;
tmp = (TreeNode *)malloc(sizeof(TreeNode));
tmp = root;
fd = (FILE*)fopen("save.txt", "w");
if (fd == NULL)
{
printf("에러 : 열수 없음 \n\n");
return;
}
fsave(tmp, *fd);
fclose(fd);
}
read함수는 메모장을 열어서 단어와 뜻을 p element에 넣어서 이 element를 트리에 직접 삽입하는 구조입니다.
근데 무슨일인지 에러는 안나는데 사전내용을 출력해봐도 내용은 따로 안나오네요...
write함수는 메모장파일로 저장하는 함수인데... 예외가 뜨면서 에러가 나오네요..
an invalid handle was specified
인데 좀 범위가 광범위하고 직접적인 해결책은 안보여서요...
이것만 해결하면 좀 살꺼 같은데.. 뭐가 잘못됫는지 지적해주실수 있으신가요?