![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 | |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,328
|
![]()
Привет!
У меня есть два примера. В одном я реализовал сортировку обычного массива по заданному полю: http://codepad.org/lhZjRC9h А в другом примере, реализована запись List объектов в бинарный файл: http://codepad.org/Kynck94U Пример взят отсюда: http://www.sharp-blog.ru/Serializaci...jl-csharp.html Теперь мне нужно переделать первый пример так, чтобы была запись в бинарный файл. Но там обычный массив, а во втором примере List. Вот что лучше сделать: переделать сортировку под List или сделать запись в бинарный файл для обычного массива? Подробнее о первом примере: Реализовал сортировку массива объектов по заданному полю. Пользователю предлагается ввести лекарства (название, цена и т.д.). Для этого он вводит команду: add. После ввода нескольких лекарств, он может отсортировать их по заданному полю. После ввода команды help: Цитата:
|
|
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 18.01.2012
Сообщений: 975
|
![]()
BinaryFormatter - и хоть список, хоть массив. В бинарный файл (в качестве выходного потока указать файловый поток) писать и то и то будет одинаково удобно. Ну и читать соответственно
Благодарить в репутацию. Проклинать — туда же
![]() |
![]() |
![]() |
![]() |
#3 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,328
|
![]()
Спасибо за ответ!
Для удобства: - класс со студентами (студенты в List, их можно записать в файл) http://codepad.org/Kynck94U - класс с лекарствами объекты, которого нужно записать в файл (массив Remedy[]): http://codepad.org/lhZjRC9h Чтобы объект можно было записать в файл, нужно унаследовать от ISerializable: Код:
Код:
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
ISerializable не класс, а интерфейс.
итого, класс может имеет одного предка и может иметь множество реализаций интерфейсов. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
#5 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,328
|
![]()
Спасибо!
Но если я так пишу, то двоеточие подчёркивается красным: Код:
|
![]() |
![]() |
![]() |
#6 | ||
Форумчанин
Регистрация: 18.01.2012
Сообщений: 975
|
![]() Цитата:
Цитата:
Код:
P.P.S. List<Student> можно завернуть в класс-обертку, удобнее будет. Ну и атрибут [Serializable] можно будет поставить. Код:
Благодарить в репутацию. Проклинать — туда же
![]() Последний раз редактировалось Luuzuk; 19.02.2014 в 14:47. |
||
![]() |
![]() |
![]() |
#7 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,328
|
![]()
Спасибо огромное! Это бы здорово облегчило жизнь, но объекты сохраняются в файл, но не загружаются.
Код:
Код:
Код:
|
![]() |
![]() |
![]() |
#8 | |
Форумчанин
Регистрация: 18.01.2012
Сообщений: 975
|
![]() Цитата:
Благодарить в репутацию. Проклинать — туда же
![]() |
|
![]() |
![]() |
![]() |
#9 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,328
|
![]()
Я ввожу лекарства и комадну savе: http://codepad.org/0sHBBAN4
|
![]() |
![]() |
![]() |
#10 | |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,328
|
![]()
Добавил в case: nmed = med.Count();
Код:
Цитата:
Код:
Код:
|
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Запись в бинарный файл структуры | Стремящийся | Visual C++ | 1 | 18.03.2012 13:01 |
запись в бинарный файл | Shepard90 | Общие вопросы C/C++ | 2 | 28.06.2011 08:59 |
с++ запись в бинарный файл ofstream::write | Farrel | Общие вопросы C/C++ | 1 | 25.11.2010 00:19 |
Чтение/запись массива объектов в файл | MrBrain | Общие вопросы .NET | 0 | 08.06.2010 10:44 |
запись классов в бинарный файл | Feannewedd | Общие вопросы C/C++ | 6 | 29.06.2009 10:11 |