如何在ruby中读取csv文件的文件名

时间:2017-07-07 03:05:54

标签: ruby csv

我需要读取csv文件的文件名,以提取有关如何处理文件内数据的一些信息。我如何阅读文件名?

e.g。我将得到一个名为200_SomeTestName.csv的文件。该文件将包含要创建的测试的详细信息。我需要为id为200的学生创建一个名为SomeTestName的测试。

1 个答案:

答案 0 :(得分:2)

您可以列出保管箱文件夹中的所有CSV文件,并检查它们是否与模式匹配。然后提取您需要的信息并创建测试:

Dir.glob('yourdropboxfolder/*.csv').each do |filename|
  name = File.basename(filename, '.csv')
  if (match = /(\d+)_(.*).csv/.match(name))
    student_id = match[1]
    test_name = match[2]
    create_test_for(student_id, test_name, File.read(filename))
  end
end

不确定是否需要从文件名中提取值,或者此信息是否也在文件中。