Share via


_chsize_s

更改文件的大小。 这是 _chsize 的版本与安全增强的 CRT中的安全功能如中所述。

errno_t _chsize_s( 
   int fd,
   __int64 size 
);

参数

  • fd
    引用打开文件的描述符。

  • size
    文件的新字节长度。

返回值

,如果成功更改,_chsize_s返回值 0 文件大小。 非零返回值指示错误:返回值是 EACCES,如果指定的文件锁定的访问, EBADF,如果指定的文件只读或说明符无效, ENOSPC,如果空间在计算机不留下,或者 EINVAL,如果大小小于零。 errno设置为相同的值。

有关这些属性和其他的更多信息返回代码示例,请参见 _doserrno、 errno、 _sys_errlist 和 _sys_nerr

备注

_chsize_s功能来扩展或截断文件与 fd 到 size指定的长度。 文件必须已在允许编写的模式。 null 字符 (“\ 0 ") 追加,如果文件是扩展。 如果文件被截断,从缩短的文件结尾的所有数据对文件的原始长度的丢失。

_chsize_s采用一个 64 位整数作为文件大小,并且可以处理文件大小大的超过 4 GB。 _chsize限于 32 位文件大小。

此功能验证其参数。 如果 fd 不是有效的文件描述符或范围小于零,无效参数调用处理程序,如 参数验证所述。

要求

实例

必需的头

可选标头

_chsize_s

io.h

errno.h

有关更多兼容性信息,请参见中介绍的 兼容性

.NET Framework 等效项

请参见

参考

文件处理

_chsize

_close

_creat, _wcreat

_open, _wopen