文件没有输出

时间:2012-10-22 18:33:28

标签: ruby

将文本从输入文件转换为莫尔斯代码,然后将结果放入输出txt文件中。文件本身正在创建,但没有输出。

MAXLINELENGTH = 40
codes = ['.-', '-...', '-.-.', '-..', '.', '..-.', 
         '--.', '....', '..', '.---', '-.-', '.-..', 
         '--', '-.', '---', '.--.', '--.-', '.-.', 
         '...', '-', '..-', '...-', '.--', '-..-', 
         '-.--', '--..','.----', '..---', '...--', 
         '....-', '.....', '-....', '--...', '---..', 
         '----.', '-----']
chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890"
fin = File.open("input.txt", "r")
fout = File.open("output.txt", "w")
line_length = 0
while character = fin.getc
  if index = chars.index(character.upcase)
    morse = codes[index]
  elsif character == " "
    fout.print "    "
    line_length = line_length + 4
  end  
  if line_length >= MAXLINELENGTH
    fout.print "\n"
    line_length = 0
  end
end
fin.close
fout.close

1 个答案:

答案 0 :(得分:5)

您永远不会实际打印变量morse,只需将其分配到if - 语句的第一行。