如何在Ruby中指定结束行字符?
以下代码有效:如何在Ruby中指定结束行字符?,ruby,Ruby,以下代码有效: IO.foreach("C:\\Users\\zeus\\Desktop\\db.txt") do |line| puts line end 但是我想一个接一个地打印每个字符 问题是我无法指定行的结尾。我有一个输入文件,如下所示: 适配器:postgresql 数据库:您好 用户名:postgres 密码:zues 游泳池:5个 超时:5000 代码如下: IO.foreach("db.txt") do |line| i = 0 while line[i] !=
IO.foreach("C:\\Users\\zeus\\Desktop\\db.txt") do |line|
puts line
end
但是我想一个接一个地打印每个字符问题是我无法指定行的结尾。我有一个输入文件,如下所示: 适配器:postgresql
数据库:您好
用户名:postgres
密码:zues
游泳池:5个
超时:5000 代码如下:
IO.foreach("db.txt") do |line|
i = 0
while line[i] != '\n'
print line[i]
i = i+1
end
puts
end
但它只打印第一行,如下所示:
IO.foreach("db.txt") do |line|
i = 0
while line[i] != '\n'
print line[i]
i = i+1
end
puts
end
适配器:postgresql
再简单不过了。您所要做的就是写
“\n”
而不是”\n'
,先生:
IO.foreach("db.txt") do |line|
i = 0
while line[i] != "\n"
print line[i]
i = i+1
end
puts
end
然而,hspandher在他的帖子中是正确的——您尝试这样做的方式不是Ruby方式。可能您是ruby新手,以前使用C/C++/Java编写代码,或者您必须以这种方式实现(家庭作业,w/e),但是无论您以后如何处理这段代码,逐字符迭代都不是最成功的选择
无论如何,您的问题已经用我上面的代码解决了,请随意测试它。此代码在屏幕上逐字符打印,除了\n
IO.foreach("db.txt") do |line|
i = 0
while line[i] != "\n"
puts line[i]
i = i+1
end
end
你的代码中有一个结尾太多了。@Borsunho谢谢你的错误,但错误没有解决请检查我在下面发布的答案,兄弟。它对你有用吗,@ChandraShekhar?