共用方式為


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,您應該明確地使用 StrFormatByteSizeW

在 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 版或更新版本)

另請參閱

StrFormatByteSize64

StrFormatByteSizeA

StrFormatByteSizeEx