Упаковка: Ruby и обувь для написания и чтения txt файлов.

Я новичок в рубине ... и туфлях ... и программировании, но вот моя проблема:

Я сделал таймер, который помещает рассчитанную сумму в текстовый файл в виде журнала. Он также хранит все текущие итоги в отдельном текстовом файле. Работает так, как я хочу ...

Я попытался упаковать его: если я упакую rb-файл, он не сработает, он будет работать только в том случае, если я упакую всю папку, включая файлы txt.

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

Благодарю.


person uognarf    schedule 13.08.2011    source источник
comment
Что не работает? Вы можете отследить ошибку?   -  person Bijan    schedule 13.08.2011


Ответы (1)


Поведение упаковщика обуви иногда бывает некрасивым. Я думаю, вы используете окна, поэтому я попытаюсь объяснить, что происходит:

У вас есть связанное приложение Shoes-App (отдельный файл .exe). Каждый раз, когда вы запускаете его двойным щелчком, он будет извлекаться в новый временный каталог (расположенный в каталоге c: \ tmp \ tempFileDirectory). Итак, это НОВАЯ временная директория, каждый раз!

Текущий путь также устанавливается в этот каталог tmp, который также включает файлы txt, которые вы включили в приложение, в исходном состоянии. Если вы измените содержимое файлов во время выполнения приложения и перезапустите приложение, ваши изменения исчезнут, потому что в новом созданном каталоге tmp есть новая копия исходных файлов txt. до сих пор это ПЛОХАЯ идея помещать ваши файлы данных (txt в вашем случае или файлы базы данных SQLITE или файлы конфигурации, ...) в приложение пакетов.

Лучший способ: создать «скрытую» папку (имя папки должно начинаться с символа «.») В домашней папке пользователя. В Windows это должно быть что-то вроде «c: \ Users \ YourName». Создайте там все, что вам нужно, этот каталог не будет временным, поэтому вы всегда можете получить к нему доступ без проблем. В целом это должно быть лучшим решением при программировании настольных компьютеров, а не только при использовании обуви.

person Maximilian Stroh    schedule 27.04.2012