Я пытаюсь прочитать текстовый файл и вывести его содержимое в структуру. (Я пытаюсь сначала вывести содержимое, а не сразу переходить к структурам).
Я пытался прочитать файл, но, похоже, он не распознает имя, даже если они совпадают и файл существует.
Текстовый файл ("settings.txt")
vida 3
vel_bola 1
vel_barreira 1
tamanho 15
quant_tijolos 30
tipo_tijolo 1
vel_brinde 1
tipo_brinde 1
tempo_brinde 60
prob_normal 70
prob_resist 20
prob_magico 10
sound 1
Мой код пока что
int _tmain(int argc, LPTSTR argv[]) {
#ifdef UNICODE
_setmode(_fileno(stdin), _O_WTEXT);
_setmode(_fileno(stdout), _O_WTEXT);
#endif
//jogo j;
HANDLE hFile;
byte buffer[BUFFERSIZE] = { 0 };
DWORD nIn = 0;
LPCWSTR fName = TEXT("settings.txt");
hFile = CreateFile(fName, GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
if (hFile == INVALID_HANDLE_VALUE) {
_tprintf(TEXT("Error opening the file %s!\n\n"), fName);
}else
_tprintf(TEXT("File %s Open!\n\n"), fName);
if (ReadFile(hFile, buffer, BUFFERSIZE - 2, &nIn, NULL) == FALSE) {
_tprintf(TEXT("It wasn't possible to read the file %s\n\n"), fName);
CloseHandle(hFile);
return -1;
}
if (nIn > 0 && nIn <= BUFFERSIZE - 2) {
buffer[nIn] = TEXT('\0');
}
_tprintf(TEXT("%s", buffer));
return 0;
}
EDIT:
Структура для использования
typedef struct Jogo {
unsigned vidas;
unsigned vel_bola;
unsigned vel_barreira;
unsigned tamanho_barreira;
unsigned quant_tijolos;
unsigned tipo_tijolo;
unsigned vel_brinde;
unsigned tipo_brinde;
unsigned tempo_brinde;
unsigned prob_normal;
unsigned prob_resist;
unsigned probm_magico;
BOOL sound;
}jogo;
Я ожидал, что содержимое будет выводиться на экран, как текстовый файл, но это просто даст мне нулевой результат (из отладки).
ОБНОВЛЕНИЕ: Теперь он читает файл и помещает все в буфер, но все равно не выводит на экран.
ОБНОВЛЕНИЕ КОНЕЦ
ОБНОВЛЕНИЕ 2: Это работает так, как задумано, теперь это вопрос помещения его в структуру.
UPDATE2 END