3

私が取り組んでいるこれらの2つのことがあります:

CSV.foreach('datafile.csv','r') {|row| D_Location << row[0]}

puts Date.new(2003,05,02).cwday

最初の行で、datafile.csv を文字列のようなものに変更したいので、1 つの文字列を変更すると、これらすべてのコードで変更されます。私はたくさんあり、それぞれが1つのcsv列を制御しています。

2 つ目では、実際に書かれた日付を文字列に置き換えたいと思います。これは、文字列が他の基準に基づいて生成されるため、自動化できるようにするためです。

私があまりにも初心者である場合、モッズは私を禁止すると信じています。それから私は強くなり、最終的にこれらの答えを自分で見つけます. しかし、これまでに多くのことを解決してきましたが、これはそうではありません。前もって感謝します!

4

2 に答える 2

1

質問の最初の部分では、すでに文字列を使用しています。私はあなたが意味することはあなたがそれを変数に入れたいということだと思います:

csv_file = 'datafile.csv'
CSV.foreach(csv_file,'r') {|row| D_Location << row[0]}

質問の2番目の部分では、Date.parse()文字列を処理しますが、文字列は認識できる形式である必要があります。日付文字列でコンマを使用している場合は、それらをハイフンに置き換えることができます。

date_str = "2003,05,02"
Date.parse(date_str.gsub(",", "-")).cwday # => 5

日付文字列がどこから来るのか、どの形式になるのかは明確ではありませんが、理解する必要のある一般的な概念は、変数を使用できることと、文字列を変換できることです。

于 2012-08-15T06:58:49.253 に答える
1

曜日を表す文字列を受け取り、数値を返す関数を作成します。コードの後半でこの関数を呼び出します。

Date.new(2003, 05, yourfun('Tuesday')).cwday
于 2012-08-15T06:49:02.777 に答える