バイトの単位変換

バイト単位の変換

 テラバイト=ギガバイト=メガバイト=キロバイト=バイトの変換は簡単なようで、きちんと知っていないと、間違った答えをだしてしまうので、注意が必要です。
 1024バイト=1キロバイト、1024キロバイト=1メガバイト、1024メガバイト=1ギガバイト、1024ギガバイト=1テラバイトが基本的な変換規則です。1000倍では無く2^10=1024を単位の繰り上げに使います。コンピュータは2進数(ビット)を基本としているので、こちらの方が何かと便利と言うわけです。
 とりあえず、バイトからキロバイトへの変換は、以下の通り1024で割るだけ、実に簡単です。

bytes2KB(50000)

on bytes2KB(theBytes)
	theBytes div 1024 -- 小数点以下切り捨て
end bytes2KB

 逆にキロバイトをバイトに変換するには1024を掛けるだけ、これまた簡単です。

KB2Bytes(500)

on KB2Bytes(theBytes)
	theBytes * 1024
end KB2Bytes

他の単位間変換

 同様に、他の単位への変換も簡単です。割る回数や掛ける回数を増やせば良いだけです。
 次のハンドラは、ギガバイトをキロバイトに変換します。

GB2KB(6)

on GB2KB(theGB)
	theGB * 1024 * 1024
end GB2KB

 次のハンドラは、バイトをメガバイトに変換します。

bytes2MB(4000000)

on bytes2MB(theBytes)
	theBytes div (1024 * 1024)
end bytes2MB

 この変換はリットル(liter)等の単位と同じように定義されていてしかるべきだと思うのですが。
 マイル(mile)やオンス(ounce)などという、国際単位系にはずれたものばっかり定義されてます。いい加減にアメリカは国際化して欲しいもんです。

Finderで利用する

 多くの場合、AppleScriptで得られるサイズはバイト単位ですが、私たちが目にするのは大抵キロバイトかメガバイトです。
 例えば、次のようにファイルサイズを求める場合なんかに使います。

tell application "Finder"
	set theBytes to (size of (choose file)) div 1024
	display dialog (theBytes as string) & "KBです"
end tell

2000-08-06