Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
はてなダイアリー - 永字八法
[go: Go Back, main page]

Hatena::Diary
    
はてな
 ようこそゲストさん  最新の日記 ユーザー登録 ログイン ヘルプ

永字八法

Content

2004-10-11 Monday ソフトを探すより、Perlで組むほうが早いのか。

[][]おかげさまで。 18:51

登録問題が400問を越えました。

……って、400問目は俺だよ!

[][]get_bmp_size.pl 12:02

スクリプトが置かれたディレクトリ以下にある全ての*.bmpファイルの画面上のサイズを取得し、size.txtとして書き出すスクリプト

use strict;
opendir ( DIR, '.' );
my @dir = sort grep { -d $_ } grep { !/^\./ } readdir ( DIR );
closedir ( DIR );
my %result = ();
my @bmp = ();
while ( @dir ) {
	my $dir = shift @dir;
	opendir ( DIR, $dir );
	my @object = sort map { "$dir\/$_" } grep { !/^\./ } readdir ( DIR );
	closedir ( DIR );
	push @dir, grep { -d $_ } @object;
	push @bmp, grep { /\.bmp$/i } @object;
}
my( $pixels, $width, $height ) = ();
foreach my $bmp ( @bmp ) {
	open ( IN, $bmp );
	binmode ( IN );
	seek(IN, 18, 0);
	read(IN, $pixels, 8);
	($width, $height) = unpack("V2", $pixels);
	$result{$bmp} = [$width, $height];
	close ( IN );
}
open ( OUT, '>size.txt' );
foreach my $file ( sort keys %result ) {
	print OUT "$file\t".$result{$file}->[0]."\t".$result{$file}->[1]."\n";
}
close ( OUT );
トラックバック - http://d.hatena.ne.jp/eiji8pou/20041011

最新キーワード

最新キーワード(読書)

最新キーワード(マンガ)

最新キーワード(アニメ)

最新キーワード(ゲーム)

注目キーワード

最新キーワード(ウェブ)

最新キーワード(コンピュータ)


Page View: 23226