Вопрос

Я создаю программу для чтения RSS в качестве хобби-проекта и в тот момент, когда пользователь добавляет свои собственные URL-адреса.

Я думал о двух вещах.

  • Открытый текстовый файл, в котором каждый URL-адрес представляет собой одну строку.
  • SQLite, где я могу иметь уникальные идентификаторы и описания после URL-адреса

Является ли идея SQLite слишком затратной или есть лучший способ сделать такие вещи?

Это было полезно?

Решение

А как насчет ОПМЛ файл?Это XML, поэтому, если вам нужно хранить больше данных, чем предусмотрено спецификацией OPML, вы всегда можете добавить свое собственное пространство имен.

Кроме того, импорт и экспорт из других программ чтения RSS осуществляется через OPML.Часто для этого имеется библиотечная поддержка.Если вы заинтересованы в смене пользователей, вам необходимо поддерживать OPML.Спасибо Джамешу за то, что он поднял этот вопрос.

Другие советы

Почему не XML?

Если вы все равно имеете дело с RSS, то можете :)

Планируете ли вы просто хранить URL-адреса?Или вы планируете добавить данные типа last_fetch_time или так?

Если это просто список URL-адресов, который ваша программа будет читать построчно и загружать данные, сохраните его в файле или, что еще лучше, в каком-нибудь сериализованном объекте, записанном в файл.

Если вы планируете продлить его, добавьте комментарии/время последней загрузки, и т. д., Я бы выбрал SQLite, это не так уж и дорого.

Если это однопользовательское приложение, имеющее только один экземпляр, SQLite может оказаться излишним.

На мой взгляд у вас есть несколько вариантов:

  1. Уровень SQLite/базы данных.Увеличивает количество зависимостей, необходимых для запуска вашего кода.Но разрешает одновременный доступ
  2. Создайте свой собственный анализатор текста.Сложность возрастает по мере того, как вы хотите сохранить больше данных и заново изобретаете велосипед.Меньше зависимостей, и изначально, хотя ваши данные просты, новичку вашего приложения их легко редактировать.
  3. Используйте XML.Он хорошо сформирован и определен, а текст можно редактировать.Однако хранить только URL-адрес может быть излишним.
  4. Используйте что-то вроде соленый огурец для сериализации ваших объектов и сохранения их на диск.Изменения в вашей структуре данных означают «обновление» файлов рассола.Редактирование не очень интуитивно понятно для начинающего пользователя, но чрезвычайно легко реализовать.

Я бы выбрал вариант текстового файла XML.Вы можете использовать инструмент XSD, встроенный в Visual Studio, для создания DataTable из данных XML, и при необходимости он легко сериализуется обратно в файл.

Другое предостережение заключается в том, что я уверен, что вы захотите, чтобы конечный пользователь мог классифицировать свои RSS-каналы и потенциально иметь возможность искать/сортировать их, и наличие такого типа таблиц данных поможет в этом.

Вы получите простое хранение файлов и доступ к ним, преимущества структуры «базы данных», но без накладных расходов, присущих SQLite.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top