StrFormatByteSizeW 函式 (shlwapi.h)
根據大小,將數值轉換成字串,代表以位元組、KB、MB 或 GB 為單位的大小值表示的數位。 不同於一個參數類型中的 StrFormatByteSizeA。
語法
PWSTR StrFormatByteSizeW(
LONGLONG qdw,
[out] PWSTR pszBuf,
UINT cchBuf
);
參數
qdw
類型:LONGLONG
要轉換的數值。
[out] pszBuf
類型:PWSTR
緩衝區的指標,當此函式成功傳回時,會接收轉換的數位。
cchBuf
類型:UINT
pszBuf所指向的緩衝區大小,以字元為單位。
傳回值
類型:PWSTR
傳回已轉換字串的指標,如果轉換失敗,則 NULL。
言論
此函式的第一個參數針對 ANSI 和 Unicode 版本有不同的類型。 如果您的數值是 DWORD,您可以使用 StrFormatByteSize 搭配這兩種情況的文字巨集。 編譯程式會將數值轉換成 Unicode 案例的 LONGLONG。 如果您的數值是 LONGLONG
在 Windows 10 中,會以基底 10 而非基底 2 回報大小。 例如,1 KB 是 1000 個字節,而不是 1024。
下表說明此函式如何將數值轉換成文字字串。
數值 | 文字字串 |
---|---|
532 | 532 個字節 |
1340 | 1.30 KB |
23506 | 22.9 KB |
2400016 | 2.28 MB |
2400000000 | 2.23 GB |
注意
shlwapi.h 標頭會根據 UNICODE 預處理器常數的定義,將 StrFormatByteSize 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional、Windows XP [僅限傳統型應用程式] |
支援的最低伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平臺 | 窗戶 |
標頭 | shlwapi.h |
連結庫 | Shlwapi.lib |
DLL | Shlwapi.dll (4.71 版或更新版本) |