2014-08-28 5 views
1

Возможно ли, чтобы одна портативная программа сохраняла данные в приложении? Я не хочу, чтобы программа создавала папки или файлы.Сохранение данных в программе?

+0

Вы можете использовать базу данных – nbro

+0

@usar Что значит разместить его на сервере .. я не думаю, что я могу позволить себе такую ​​ответственность .. – Edenia

+0

Вы могли бы иметь локальную БД, но я не знаком с БД для C, я не могу помочь вам больше детства;) Может быть, другие могут помочь вам больше, иначе исследование в Интернете может помочь вам больше;) – nbro

ответ

1

Чтобы сделать это переносным способом, у вас не должно быть никаких предположений об архитектуре или операционной системе: вы можете или не иметь доступ к исполняемому файлу в первую очередь (это может быть argv[0], но, возможно, это isn Если у вас есть доступ к исполняемому файлу, у вас могут быть права на открытие файла и его изменение, но, возможно, вы не сможете это сделать.

Если, во всяком случае, вы хотите попробовать, вы могли бы:

  • Проверьте, есть ли файл argv[0] - это файл, в котором у вас есть права на чтение и запись, и если это действительно ваш код (ищет для случайной строки, которую вы можете оставить где-то в своем коде, например).

  • Выберите строку, чтобы отметить ваши изменения, например «Edenia», и проверьте, являются ли последние байты этого файла. Если это так, файл был предварительно изменен, и вы можете прочитать его процесс обработки данных.

  • Если вы хотите сохранить дополнительные данные, добавьте их в конец файла (если он еще не был изменен) или замените его изменения. Не забудьте добавить отметку в конце файла («Edenia» или что-то еще).

Во всяком случае, я до сих пор считаю, что это не правильный способ хранения данных: попробуйте использовать внешнее хранилище (файлы, базы данных и т.д.), если вы можете.

+0

Я не прошу какого-либо «правильного» метода. Я прошу что-то особенное. Однако, если ваш ответ верен, он богат и i +1 он. – Edenia

Смежные вопросы