Таблица рекордов WinForms

176
23 мая 2019, 01:30

Подскажите, пожалуйста, как можно создать таблицу рекордов в Windows Forms. Пишу игру "Сапер".
Да так, чтобы рекорды не стирались, если закрывалась программа, и при следующем запуске можно было их просмотреть + сохранялось определенное кол-во рекордов, а последующие заменяли первые.
Связано это как-то с использованием БД или нет?

Answer 1

БД полноценная для такой задачи слишком избыточна. Даже если это SQLite -- это плохая идея создавать цедую БД ради одной таблицы в пару колонок...

Можешь пойти одним из следующих путей:

  1. Сериализация бинарная - https://ru.stackoverflow.com/a/849282/186752
  2. Сохранение в CSV - Как просто работать с / открыть / изменить / сохранить Excel - xlsx / CSV файлы
  3. Сохранение в INI файл. Класс для работы можно подсмотреть вот здесь: https://github.com/ukushu/DataExporter/blob/master/Ini.cs
  4. Сериализация в XML

B куча других путей, вроде сохранение в JSON, NoSQL, realm, и черти-что еще....Да хоть просто в текстовый документ в своем личном формате :)

Лично я бы под эту задачу выбрал бы первый путь.

Почему:

Путь 1. - пользователи не смогут читерить вводя свои данные. Не нужно качать библиотек, не нужно подключать лишние библиотеки из "родных". Добавлять кода нужно минимум.

Путь 2. - избыточен. нужно качать левые библиотеки. Зато УДОБНО править через блокнот результаты и быть читером :)

Путь 3. - УДОБНО править через блокнот результаты и быть читером :) Так же минимум кода.

Путь 4. - Немного более сложный чем первые 3 пути. Больше кода, сложнее разбираться новичку

READ ALSO
Не могу понять, как реализовать деление на 2

Не могу понять, как реализовать деление на 2

Допустим у меня есть переменная int N = 19; Если я её поделю на 2 - получится 9,5 и выйдет ошибка (нужно что бы тип переменной оставался int)Есть еще...

129
Visual Studio не видит поле C#

Visual Studio не видит поле C#

Visual Studio не видит и не подсвечивает полеНо в окошке с просмотрами элементов файла он есть

113
Можно ли в C# проект зашить код python?

Можно ли в C# проект зашить код python?

У меня есть приложение на C# можно ли в него зашить python скрипт? Чтобы он сразу подгружался с кодом?

130
Аналог срезов(Slices) в python в C#

Аналог срезов(Slices) в python в C#

Господа, возник вот какой вопрос, как перенести одно слово в строке на место другого, например

135