| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Считывание переменных структуры |
| Автор: gepard 20.5.2004, 14:52 | ||||||
Вот у меня есть структура:
И есть файл("file.txt") со след. содержимым:
Как вы можете видеть названия переменных, которым присваиваются значения в файле, совпадают с именами эл-ов структуры. Вопрос: Как мне записать соответствующее значение, считанное из файла, в соответствующую переменную? Т.е., если она видит, что в файле идёт присвоение переменной tex_ID значения 0, то она соответственно присваивает ms.tex_ID значение 0. Как мне это сделать не используя сравнения строк, типа:
|
| Автор: Sined 20.5.2004, 15:09 | ||
| Если тебе не известно содержимое файла, то, не очень(?????). Если известно точно, почему бы просто не пропускать ненужные вещи и считывать только то, что тебе надо, потом трансформировать в число. например так. считывание Tex_ID. Не помню точно синтаксиса, но ПСЕВДОкод, наверное такой
|
| Автор: bel_nikita 20.5.2004, 17:03 | ||
| Не энаю, может и не в тему В VC есть GetPrivateProfileString(....); и GetPrivateProfileInt(...); для работы с ini файлами. Можно txt файл переделать типа того:
и тогда считывать никаких проблем Если заинтересует, то могу примерчик кидануть |
| Автор: Конструктор 20.5.2004, 17:42 |
| Напиши функцию например long GetVarLongValue(const char * varname , FILE * f). Она по сути и будет мутить все сравнения, но внутрях, и будет красиво. В Builder есть славный компонент TIniFile. Работает со стандартными Ini файлами. Аналогичен по действию как я понимаю с тем что предложил bel_nikita. Если есть задача просто забить структуру в файл, то лучше вообще использовать fwrite, правда файлик будет двоичным и читать надо будет так-же как и записал. А вот чтобы имена переменных сами совпадали с именами параметров это не знаю |