StrFormatByteSizeW function
Converts a numeric value into a string that represents the number expressed as a size value in bytes, kilobytes, megabytes, or gigabytes, depending on the size. Differs from StrFormatByteSizeA in one parameter type.
Syntax
PWSTR StrFormatByteSizeW( LONGLONG qdw, _Out_ PWSTR pszBuf, UINT cchBuf );
Parameters
- qdw
-
Type: LONGLONG
The numeric value to be converted.
- pszBuf [out]
-
Type: PWSTR
A pointer to a buffer that, when this function returns successfully, receives the converted number.
- cchBuf
-
Type: UINT
The size of the buffer pointed to by pszBuf, in characters.
Return value
Type: PWSTR
Returns a pointer to the converted string, or NULL if the conversion fails.
Remarks
The first parameter of this function has different types for the ANSI and Unicode versions. If your numeric value is a DWORD, you can use StrFormatByteSize with text macros for both cases. The compiler will cast the numerical value to a LONGLONG for the Unicode case. If your numerical value is a LONGLONG, you should use StrFormatByteSizeW explicitly.
In Windows 10, size is reported in base 10 rather than base 2. For example, 1 KB is 1000 bytes rather than 1024.
The following table illustrates how this function converts a numeric value into a text string.
| Numeric value | Text string |
|---|---|
| 532 | 532 bytes |
| 1340 | 1.30 KB |
| 23506 | 22.9 KB |
| 2400016 | 2.28 MB |
| 2400000000 | 2.23 GB |
Requirements
|
Minimum supported client |
Windows 2000 Professional, Windows XP [desktop apps only] |
|---|---|
|
Minimum supported server |
Windows 2000 Server [desktop apps only] |
|
Header |
|
|
Library |
|
|
DLL |
|
|
Unicode and ANSI names |
StrFormatByteSizeW (Unicode) |
See also