terabyte octets megabytes mbytes convertir bytes ios nsdata nslog

ios - megabytes - octets to mb



convertir longitud de NSData de bytes a megas (2)

Hay 1024 bytes en un kilobyte y 1024 kilobytes en un megabyte, así que ...

NSLog(@"File size is : %.2f MB",(float)myData.length/1024.0f/1024.0f);

Tenga en cuenta que este es un enfoque simplista que realmente no podría adaptarse a tamaños de bytes inferiores a 1.048.576 bytes o superiores a 1.073.741.823 bytes. Para obtener una solución más completa que pueda manejar diferentes tamaños de archivo, consulte: ¿ Clase de ObjC / Cocoa para convertir el tamaño en una cadena legible para el ser humano?

O para OS X 10.8+ e iOS 6+

NSLog(@"%@", [[NSByteCountFormatter new] stringFromByteCount:data.length]);

En Swift:

print(ByteCountFormatter().string(fromByteCount: Int64(data.count)))

Estoy intentando NSLog con NSLog el número de megas que mi objeto NSData es, sin embargo, actualmente todo lo que puedo obtener son bytes utilizando

NSLog(@"%u", myData.length);

Entonces, ¿cómo cambiaría esta declaración NSLog para que pueda ver algo así como

2.00 megas

Cualquier ayuda sería apreciada.


Para Swift 3, en Mb:

let countBytes = ByteCountFormatter() countBytes.allowedUnits = [.useMB] countBytes.countStyle = .file let fileSize = countBytes.string(fromByteCount: Int64(dataToMeasure!.count)) print("File size: /(fileSize)")