【问题标题】:Writing to file with Ruby in Compilr在编译器中使用 Ruby 写入文件
【发布时间】:2013-10-01 13:22:07
【问题描述】:

我正在通过 Zed A. Shaw 在编译器上以艰难的方式学习代码 (Ruby) 并坚持练习 16。

filename = ARGV.first
target = File.open(filename, 'w')
target.truncate(target.size)
target.close()

在控制台中,我输入

run sample.txt

这应该会擦除 sample.txt 文件,但不会。

文件 sample.txt 与 Start 文件位于同一文件夹中。

有什么线索吗?

【问题讨论】:

  • 您要删除内容还是从该位置删除文件?你在哪个平台?是指哪个操作系统?正如文档所说 将文件截断为最多整数字节。必须打开文件才能写入。 并非在所有平台上都可用
  • 我正在使用这个名为 Compilr (compilr.com) 的在线平台。我在我的 Mac 终端上用文本编辑器试了一下,效果很好。所以这可能与Compilr有关。我一直在寻找高低,为什么我无法写入文件,无法找到和回答。

标签: ruby learn-ruby-the-hard-way


【解决方案1】:

好吧,这不是 Ruby 问题(正如我所料),它与 Compilr 的工作方式有关。通过在没有先创建 sample.txt 文件的情况下运行代码,Compilr 默认在 content 文件夹中为我创建了该文件。因此,将呃……可写文件……放入目录文件夹中,可以让 Compilr 写入它们。将它们全部放在同一个文件夹(脚本和文件)中会使它不起作用。

【讨论】:

  • 注意:Compilr 的文本编辑器不会刷新以显示新文件(您必须先制作它),并且不会刷新(您必须关闭它并重新打开它才能看到内容) .
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-22
相关资源
最近更新 更多