strFormatByteSizeW 函数 (shlwapi.h)
将数值转换为字符串,该字符串表示以大小值表示的数字(以字节、千字节、兆字节或千兆字节为单位),具体取决于大小。 在一个参数类型中与 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 标头将 StrFormatByteSize 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 专业版、Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | shlwapi.h |
Library | Shlwapi.lib |
DLL | Shlwapi.dll (4.71 或更高版本) |
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈