2012-05-15 11 views

答えて

19
File.size("#{doc.filename}") 

ファイルの名前を中括弧にスローすると、設定する必要があります。

あなたはKB/MBの使用が必要な場合:

number_to_human_size(File.size("#{doc.filename}")) 

はEDIT:

あなたが拡張のために

1.9.3p125 :005 > x=Pathname.new("/usr/bin/ruby") 
=> #<Pathname:/usr/bin/ruby> 
1.9.3p125 :006 > File.size(x) 
=> 5488 

を正確なパスやパス名を使用することができます。

File.extname("test.rb")   #=> ".rb" 
+0

どのように?ファイル名を '。'で分割するのが最善でしょうか? – Jakcst

+0

Jack、私の編集を参照してください – Abram

+3

'number_to_human_size'を使用するには、' include ActionView :: Helpers :: NumberHelper'をクラスに追加する必要があります。 –

6
params[:file].size 
File.extname(params[:file].original_name) 

またはparams[:file].original_name.match(/\.(\S*)$/).try(:"[]",1)

+0

params [:file] .sizeはすばらしく簡単です! –

+0

サイズの種類はどのように知っていますか? kbかバイトかにかかわらず? – Chitra

関連する問題