2014-02-26 56 views
6

使用此代碼從圖片庫中挑選圖片後,我可以查看圖片大小。以MB格式顯示圖像大小IOS 7

NSData *imageData1 = [[NSData alloc] initWithData:UIImageJPEGRepresentation((imageview.image), 0.5)]; 

    int imageSize = imageData1.length; 
    NSLog(@"SIZE OF IMAGE: %i ", imageSize); 

但顯示這樣的東西。

SIZE OF IMAGE: 237125 

但我想查看MB格式的圖像大小像25 MB如何做請告訴我如何做到這一點。

謝謝。

回答

8

imageSize具有以字節爲單位的數據長度。你需要將其轉換爲MB

NSLog(@"SIZE OF IMAGE: %i Mb", imageSize/1024/1024); 

UPDATE:

您還可以使用下面的代碼

NSLog(@"SIZE OF IMAGE: %.2f Mb", (float)imageSize/1024/1024); 

接收像

尺寸圖片輸出:0.23 MB

對於尺寸小於1 Mb的0

+0

現在在控制檯的表現0MB請告訴我如何relsolve這 – user3349668

+0

這是因爲237125個字節是小於1 MB 。 – Avt

+0

好的,謝謝@Avt我會檢查大尺寸圖像 – user3349668

14
[NSByteCountFormatter stringFromByteCount:imageSize 
         countStyle:NSByteCountFormatterCountStyleFile]; 
+0

這是正確的答案。 –

+0

是的,這應該被標記爲正確的答案,我添加了我自己的版本在Swift中 –

+0

因此,這給出MB中的答案吧? – Supertecnoboff

0

補充@rounak的答案,斯威夫特3

ByteCountFormatter.string(fromByteCount: Int64(imageSize), countStyle: .file)