2009年02月16日

金銀Perlプレ(ry

自前サーバで使うファイルアップローダーをボチボチ作成中。使っていて言うのもどうかと思わんでもないが、Perlが凄く使いづらい。今更ながらちょっと失敗したかなと思うけど、だいたい形になったのでまあ十分としておこう。

とにかくPerlには、ファイル更新時刻取得で米語圏書式の文字列しか取得できないファック仕様だけは何とかしていただきたい・・・。
posted by JUD at 21:44| Comment(4) | TrackBack(0) | PC・ネットワーク
この記事へのコメント
あれ、Perlのファイル更新日付取得って、普通にUnix timeで取れたような。
strftimeとかで好きに整形できるはず。

って、そういう話ではないですか?
Posted by shout at 2009年02月18日 01:37
うーん、困ったことにPerlなんて飯のタネじゃないからどういった類の指摘なのか全然わからんね、まいった^^;
何かモジュールを使えということ?

Perlはやっつけ作業で使ってるだけなので、悪いんだが多分具体的にコードを示していただかんと理解できんと思うのですよ
Posted by JUD at 2009年02月18日 01:49
えーっと、まず、

@file_attr = stat('hoge.txt');

で、配列file_attrにファイルhoge.txtのもろもろの属性情報が代入されます。

んで、$file_attr[9]に、ファイルの最終更新日時がunix time(1970/1/1からの経過秒数)で格納されているので、これを好きに整形してあげればよいと。

モジュールを使わない方法だと、localtime関数で要素ごとにばらしてからsprintf等で並べるやりかたとか。
http://cocohome.hp.infoseek.co.jp/perl_ref/localtime.html

あと、↓のようなモジュールを使うと、もうちょっと簡単に整形できます。
http://www2u.biglobe.ne.jp/~MAS/perl/waza/strftime.html
Posted by shout at 2009年02月18日 08:21
あー、うん。localtime($hoge[9])を使ってるよ。unix timeはperlでそういう表現が妥当ではないかもだがtime_t型を指しているのか。
unix timeって用語は常識なの? 仕事で使ったことないなあ

sprintfや文字列処理で重いのはイヤだがのべつまくなしにモジュールを使いまくるのはもっとイヤだったりする・・・。
Posted by JUD at 2009年02月18日 09:43
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/26841698
※ブログオーナーが承認したトラックバックのみ表示されます。
※言及リンクのないトラックバックは受信されません。

この記事へのトラックバック