![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| Fighter |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 810 Регистрация: 5.1.2005 Репутация: нет Всего: 2 |
До сих пор я не встретил ни одной книжки в которой внятно объясняется как работать с файлами и поэтому решил обратиться сюда. Меня больше интересует запись и считывание из файла используя функции open, creat, read, write. В книгах начинают писать про буферы-фуферы и т.д.
Вопрос в тык. Вот у меня есть исходник! #include <stdio.h> #include <iostream.h> #include <conio.h> **** int main() { int a; char* b; *** cin >> a; cin >> b; *** return 0; } Как мне теперь организовать запись в файл, используя функции read write open close creat? Приведите исходник. И кстати, можно ли структуры целиком сохранять. Например, struct person_info { int age; char* name; }; int main() { person_info pi; write(handle, &pi, sizeof(person_info)); } вот так? |
|||
|
||||
| HELPER |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 63 Регистрация: 18.4.2005 Репутация: -2 Всего: -2 |
только pi без омперсанта, а что не работает??? |
|||
|
||||
| HELPER |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 63 Регистрация: 18.4.2005 Репутация: -2 Всего: -2 |
айай! сорри, спутал с fread...
|
|||
|
||||
| kometa_triatlon |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 384 Регистрация: 7.1.2005 Где: Киев Репутация: 2 Всего: 6 |
Итак, создаем файл, открываем на чтение. Пусть там будут данные типа int
Запись в файл:
Можно. Просто определяешь свою структуру, затем подставляешь этот тип в sizeof() -------------------- Всё очень просто: сказки обман, Солнечный остров скрылся в туман, Замков воздушных не носит земля, Кто-то ошибся, ты или я. -------------- Программирование - самое большое удовольствие, которое вы можете получить, будучи одетым. |
||||||
|
|||||||
| Fighter |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 810 Регистрация: 5.1.2005 Репутация: нет Всего: 2 |
Спасибо за это. А еще как с помощью open creat write и read а не с помощью fopen fread fwrite? |
|||
|
||||
| Fighter |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 810 Регистрация: 5.1.2005 Репутация: нет Всего: 2 |
kometa_triatlon
Кстати, спасибо. Это очень удобный способ записи в файл. Но почему он не записывает в файл переменные типа char*. Это сообщение отредактировал(а) Fighter - 11.5.2005, 21:39 |
|||
|
||||
| kometa_triatlon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 384 Регистрация: 7.1.2005 Где: Киев Репутация: 2 Всего: 6 |
Я чего-то не пойму о чем ты... Первый раз слышу о таких функциях. А насчет строк... Ну попробуй использовать char[<длина строки>]. Все же указатель - понятие растяжимое Или сделай typedef char[255] MyType; и используй MyType -------------------- Всё очень просто: сказки обман, Солнечный остров скрылся в туман, Замков воздушных не носит земля, Кто-то ошибся, ты или я. -------------- Программирование - самое большое удовольствие, которое вы можете получить, будучи одетым. |
|||
|
||||
| gepard |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2477 Регистрация: 29.2.2004 Репутация: 2 Всего: 40 |
Вот как надо работать с файлами:
-------------------- Когда начинаются цифровые войны, а траффик разносит моё сознание по бесконечным просторам инета, подобно ветру, разносящему листву по полям, тогда и только тогда я чувствую себя свободным! © Я, Берсерк, что значит - Неистовый. |
|||
|
||||
| Fighter |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 810 Регистрация: 5.1.2005 Репутация: нет Всего: 2 |
Спасибо за идею. Только вот я typedef не использую. Я сразу в структуре пишу char name1[255]. Вот я привожу код, где все работает.
Добавлено @ 05:02 Еще раз спасибо. |
||||
|
|||||
| AISIN |
|
||||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 185 Регистрация: 27.1.2005 Где: Пушкино Репутация: нет Всего: 1 |
в фортране такие функции попадаются например
ну напиши свои функции open , write и т. д. Внутри которых будешь все равно использовать, что то типа fopen и т. д. --------------------
Внимание!!! Внимание!!!Запущена программа по завоеванию мира!!!Выполненно 0,000000000000000000000000000000000000000000000000000002% |
||||||
|
|||||||
| Fixin |
|
|||
![]() Ёжик ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1357 Регистрация: 6.1.2004 Репутация: 2 Всего: 18 |
|
|||
|
||||
| kometa_triatlon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 384 Регистрация: 7.1.2005 Где: Киев Репутация: 2 Всего: 6 |
Если вы имеете ввиду методы классов ifsteam, ofstream так это же отдельный разговор...
-------------------- Всё очень просто: сказки обман, Солнечный остров скрылся в туман, Замков воздушных не носит земля, Кто-то ошибся, ты или я. -------------- Программирование - самое большое удовольствие, которое вы можете получить, будучи одетым. |
|||
|
||||
| AISIN |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 185 Регистрация: 27.1.2005 Где: Пушкино Репутация: нет Всего: 1 |
Вот так вот! --------------------
Внимание!!! Внимание!!!Запущена программа по завоеванию мира!!!Выполненно 0,000000000000000000000000000000000000000000000000000002% |
|||
|
||||
| kometa_triatlon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 384 Регистрация: 7.1.2005 Где: Киев Репутация: 2 Всего: 6 |
Ну это ты работаешь с потоками, надо было с этого и начинать...
-------------------- Всё очень просто: сказки обман, Солнечный остров скрылся в туман, Замков воздушных не носит земля, Кто-то ошибся, ты или я. -------------- Программирование - самое большое удовольствие, которое вы можете получить, будучи одетым. |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |