ColdFusion 11では、cfSpreadsheetを使用して.xlsファイルをクエリオブジェクトに変換しています。ここに私のデモのスプレッドシートのスクリーンショットです:cfSpreadsheet 2桁の年
私は、すぐにそれが作成されるクエリオブジェクトを表示するには、このコードを使用します。
<cfspreadsheet action="read" src="demo_spreadsheet.xls"
excludeHeaderRow="true"
headerrow="1" query="demo_query"/>
<cfdump var="#demo_query#">
...と私はこれらの結果を得ます:
スプレッドシートからの私の4桁の年のすべてが、今2桁の年であることに注意してください?私はこのコードを使用してクエリオブジェクトにデータを出力する行くとき:
<ul>
<cfoutput query="demo_query">
<li>#name# - #dateformat(start_date, 'medium')#</li>
</cfoutput>
</ul>
を...私は(次の出力を取得し[OK]を、私はここに新しいので、私は以上の2つのスクリーンショットを投稿することはできませんあなたは、このコピー/貼り付け)に私を信頼する必要があります:
- アルファ - 2007年1月1日
- ブラボー - 1972年2月2日
- チャーリー - 2017年3月3日
- デルタ - 1984年4月4日
- エコー - 2029年12月31日
- フォックストロット - 1930年1月1日
- ゴルフ - 1930年1月1日
年1907年は今2007年、1917年で今2017年、1929年で今2029年、および2030です今は1930年です。1930年1月1日以前の年の年は20xxと読み込まれ、12月31日以降は2029年が19xxとして読み込まれます。
何か不足していますか?私はY2Kでこのようなことを考え出したと思った。私が間違っている場所に簡単な設定がありますか?私はこの問題の話を知りました。それについては何も見つかりません。
アドバイスは大歓迎です。
、私は異なる結果を得ました。 m/d/yyyy形式の文字列の場合、何も変更されませんでした。 yyyy-mm-dd形式の文字列があなたの質問に従って変更されました。 ColdFusionを実行しているマシンおよび/またはスプレッドシートを作成したマシンの地域設定と関係している可能性があります。 –
ソーススプレッドシートでは、実際に日付が4桁で入力されたのか、データをフォーマットするだけのセルですか? –
Miguel-F - はい、毎年4桁の数字を入力しました。デフォルトの地域設定が原因と思われます。 –