7

コマンド ライン オプション -f %Y-%m-%d または %d-%b-%y で日付をフォーマットします

しかし、各日付は、入力した日付の 4 年と 1 日先になります。

たとえば、01.06.2012-f オプションなしで解析した後の日付は2016-06-02 、 -f をいじると同じ結果になります

理由は何ですか?この 4 年と 1 日をハードコードして減算する以外に回避策はありますか?

私はxls2csvを使用しています(VBWagnerによる、debianのcatdocパッケージに付属しています)別のパーサーへの切り替えは非常に高価なオプションになる可能性があります

4

2 に答える 2

3

ツールxls2csvSpreadsheet::ParseExcelは、ライブラリを使用する Perl アプリケーションです。

そのようなライブラリのドキュメントに基づいて、既知の問題の 1 つが次のとおりです。

  • 指定された形式が短い日付ロケールのシステムの既定値と等しい日付フィールドが Excel にある場合、 Excel はその形式を保存せず、システムに依存する内部形式に既定で設定されます。このような場合、ParseExcel は日付形式 'yyyy-mm-dd' を使用します。

したがって、上記の問題により、日付形式を含まない Excel ファイルを操作する可能性があります。

于 2012-06-22T17:26:43.793 に答える
3

これは既知のバグです。パッチは https://www.wagner.pp.ru/cgi-bin/cvstrac/catdoc/tktview?tn=14,4で入手できます。

できます。ちなみに、xls2csv という名前のプログラムが 2 つあります。これは、Perl プログラムではなく、catdoc パッケージのプログラムです。

于 2012-09-25T15:06:04.807 に答える