Ruby 如何在irb控制台中使用open()从.txt文件打印基本文本#红宝石

Ruby 如何在irb控制台中使用open()从.txt文件打印基本文本#红宝石,ruby,cmd,irb,Ruby,Cmd,Irb,基本上,我真的被卡住了 我有这篇文章,我需要这样做: *打印提示 file\u再次=STDIN.gets.chomp() txt\u再次=File.open(再次打开文件) 再次放入txt_.read()* 基本上是从我的控制台上打印的.txt文件中获取文本 直接从irb使用File.open(),然后尝试: File.open("ex15_sample.txt") ^我想它已经打开了,但我还是没有结果。我的意思是,它没有标记为变量,我无法打印它 如果我使用: txt = File.open

基本上,我真的被卡住了

我有这篇文章,我需要这样做: *打印提示 file\u再次=STDIN.gets.chomp() txt\u再次=File.open(再次打开文件) 再次放入txt_.read()*

基本上是从我的控制台上打印的.txt文件中获取文本

直接从irb使用File.open(),然后尝试:

 File.open("ex15_sample.txt")
^我想它已经打开了,但我还是没有结果。我的意思是,它没有标记为变量,我无法打印它

如果我使用:

txt = File.open("ex15_sample.txt")
首先我会得到一些错误,所以我以后不能使用print txt


练习是从开始的,我正在尝试做一些可选的事情,这样我就不会像我之前在codeschool初学者课程中那样毫无结果。

我已经在…/Ruby/zintlist/irb中创建了一个文件ex15_sample.txt

1.8.6 :082 > File.open("ex15_sample.txt")
Errno::ENOENT: No such file or directory - ex15_sample.txt
    from (irb):82:in `initialize'
    from (irb):82:in `open'
    from (irb):82
    from :0
1.8.6 :086 > Dir.getwd
 => "/.../Ruby/prod/spec" 
1.8.6 :087 > Dir.chdir('../../zintlist/irb')
 => 0 
1.8.6 :088 > Dir.getwd
 => "/.../Ruby/zintlist/irb" 
1.8.6 :089 > File.open("ex15_sample.txt")
 => #<File:ex15_sample.txt> 
1.8.6 :090 > 
1.8.6:082>File.open(“ex15_sample.txt”)
Errno::enoint:没有这样的文件或目录-ex15_sample.txt
from(irb):82:在“初始化”中
发件人(irb):82:处于“开放”状态
起始(irb):82
起:0
1.8.6:086>Dir.getwd
=>“/…/Ruby/prod/spec”
1.8.6:087>目录chdir(“../../zintlist/irb”)
=> 0 
1.8.6:088>Dir.getwd
=>“/…/Ruby/zintlist/irb”
1.8.6:089>File.open(“ex15_sample.txt”)
=> # 
1.8.6 :090 > 
正在尝试File.open(“ex15_sample.txt”),我假定它已打开

在irb中,通常你不需要假设,你有一个即时的答案

1.8.6 :090 > txt = File.open("ex15_sample.txt")
 => #<File:ex15_sample.txt> 
1.8.6 :091 > puts txt.read()
This is stuff I typed into a file.
It is really cool stuff.
Lots and lots of fun to have in here.
 => nil 
1.8.6 :092 > 
1.8.6:090>txt=File.open(“ex15_sample.txt”)
=> # 
1.8.6:091>puts txt.read()
这是我输入文件的东西。
这真是很酷的东西。
在这里有很多很多乐趣。
=>零
1.8.6 :092 > 
1.8.6:090>txt=open(“ex15_sample.txt”)
=> # 
1.8.6:091>puts txt.read
这是我输入文件的东西。
这真是很酷的东西。
在这里有很多很多乐趣。
=>零
1.8.6 :092 > 

Hi。“一些错误”是很难帮助解决的——如果你能更具体地回答,你应该得到一个答案,但事实并非如此。它实际上什么都不做。代码类似于$txt=File.open(“ex15_sample.txt”);放入txt.read();irb所做的就是增加它的数字,然后在2进入之后,它在结尾处变为*。不管这意味着什么,这是因为你的尾随分号,你是从
ex15_sample.txt
文件所在的同一个目录运行irb吗?在调用irb中的
txt=File.open(“ex15_sample.txt”)
之前,您需要先将cd放入终端中的该目录。或者你可以使用文件的完整路径。当我读到标签Ruby:)欢迎使用堆栈溢出!虽然您可能已经解决了询问者的问题,但仅代码的答案对遇到此问题的其他人没有多大帮助。请编辑您的答案,解释您的代码解决原始问题的原因。
1.8.6 :090 > txt = open("ex15_sample.txt")
 => #<File:ex15_sample.txt> 
1.8.6 :091 > puts txt.read
This is stuff I typed into a file.
It is really cool stuff.
Lots and lots of fun to have in here.
 => nil 
1.8.6 :092 >