2011-08-13 64 views
0

我是新来的红宝石......和鞋子...编程,但这里是我的概率:包装:Ruby和鞋子写入和读取TXT文件

我做这使定时适量调成一个计时器txt文件作为日志。它还保持全部时间在一个单独的txt文件中运行。它工作,因为我想它...

我试过打包它: 如果我打包rb文件它不起作用,它只会工作,如果我打包整个文件夹,包括txt文件。

这个工作副本似乎没有txt文件(它们是以某种方式内置的。有没有办法打包这个,所以我仍然可以访问相关的txt文件(可能与路径有关.. .. 。)

感谢

+0

什么不行?你能跟踪错误吗? – Bijan

回答

0

鞋打包行为有时是丑陋的,我认为你正在使用Windows,所以我会尽力解释什么似乎发生。

你有一个捆绑鞋,应用程序(一个独立的.exe文件)。每次你通过双击启动它时,它都会提取自己在一个新的临时目录中(位于c:\ tmp \ tempFileDirecto下RY)。所以,这是一个新的临时目录,每次都是!

当前路径也被设置为这个tmp目录,该目录还包括您绑定到应用程序中的txt文件,处于原始状态。如果在应用程序执行期间更改文件的内容并重新启动应用程序,则更改将消失,因为在新创建的tmp目录中存在原始txt文件的全新副本。到目前为止,将你的数据文件(txt,或者SQLITE-database-files,或者配置文件,......)放到bundle应用程序中是个不错的主意。

更好的方法: 在用户的主文件夹中创建一个“隐藏”文件夹(文件夹的名称应该以“。”开头)。在Windows上,它应该像“c:\ Users \ YourName”一样。在那里创建你需要的一切,这个目录不会是暂时的,所以你可以在没有问题的情况下访问它。在编写桌面软件时,这应该是一个更好的解决方案,而不仅仅是在使用鞋子时。