내 NSData
객체가 내가 할 수있는 모든 바이트 현재 그러나입니다 NSLog
에 메가의 수를 시도하고 바이트에서있는 NSData 길이로 변환어떻게 내가이 <code>NSLog</code> 문을 이렇게 바꿀 것 그래서</p> <pre><code>NSLog(@"%u", myData.length); </code></pre> <p>을 사용하여 메가
2.00 megs
어떤 도움을 받으실 수 있습니다.
내 NSData
객체가 내가 할 수있는 모든 바이트 현재 그러나입니다 NSLog
에 메가의 수를 시도하고 바이트에서있는 NSData 길이로 변환어떻게 내가이 <code>NSLog</code> 문을 이렇게 바꿀 것 그래서</p> <pre><code>NSLog(@"%u", myData.length); </code></pre> <p>을 사용하여 메가
2.00 megs
어떤 도움을 받으실 수 있습니다.
킬로바이트 1024 바이트 메가 바이트에서 1,024 킬로바이트 그래서 ...
NSLog(@"File size is : %.2f MB",(float)myData.length/1024.0f/1024.0f);
마음은 당신이 정말 제대로 1,048,576 바이트 이하 바이트 크기에 수용 할 수있는 단순한 접근 방식이 있습니다 1,073,741,823 바이트 이상이다. 다양한 파일 크기를 처리 할 수있는보다 완벽한 솔루션은 다음을 참조하십시오 ObjC/Cocoa class for converting size to human-readable string?
또는 스위프트에서 OS X 10.8+ 및 iOS 6+
NSLog(@"%@", [[NSByteCountFormatter new] stringFromByteCount:data.length]);
를 들어 :
스위프트 3print(ByteCountFormatter().string(fromByteCount: Int64(data.count)))
멋지다, 고마워. .. 나는 괄호 등이 있어야한다는 생각이 혼란스러워졌다. 그러나 이것은 완벽하게 작동했다! :) – HurkNburkS
이것을 사용자에게 표시해야하는 경우 문자열 형식을 사용하지 마십시오. 대신 NSNumberFormatter를 사용하십시오. 이렇게하면 사용자 로케일의 형식이 지정됩니다. – rmaddy
빠르고 손으로. 도움이되었다. – Alix
, in Mb :
let countBytes = ByteCountFormatter()
countBytes.allowedUnits = [.useMB]
countBytes.countStyle = .file
let fileSize = countBytes.string(fromByteCount: Int64(dataToMeasure!.count))
print("File size: \(fileSize)")
어떻게하면 소수점 이하 두 자리로 나타나는지 서식을 지정합니다. – HurkNburkS