ファイル サイズを変更します。Changes the size of a file. これは、「CRT のセキュリティ機能」の説明にあるとおり、セキュリティが強化されたバージョンの _chsize です。This is a version of _chsize with security enhancements as described in Security Features in the CRT.


errno_t _chsize_s(
   int fd,
   __int64 size


開いているファイルを参照するファイル記述子。File descriptor referring to an open file.

バイト単位のファイルの新しい長さ。New length of the file in bytes.

戻り値Return Value

_chsize_sファイル サイズが正常に変更された場合、値 0 を返します。_chsize_s returns the value 0 if the file size is successfully changed. 0 以外の戻り値は、エラーを示します戻り値はEACCESアクセスに対して、指定したファイルがロックされている場合EBADF場合、指定したファイルが読み取り専用または記述子が有効でない場合 。ENOSPC 、デバイス上の領域が残っていない場合またはEINVALサイズが 0 よりも小さい場合。A nonzero return value indicates an error: the return value is EACCES if the specified file is locked against access, EBADF if the specified file is read-only or the descriptor is invalid, ENOSPC if no space is left on the device, or EINVAL if size is less than zero. errnoが同じ値に設定します。errno is set to the same value.

リターン コードの詳細については、「 _doserrno、errno、_sys_errlist、および _sys_nerr」を参照してください。For more information about these and other return codes, see _doserrno, errno, _sys_errlist, and _sys_nerr.


_Chsize_s関数の拡張またはに関連付けられているファイルを切り捨てますfdで指定された長さにサイズします。The _chsize_s function extends or truncates the file associated with fd to the length specified by size. ファイルは、書き込みを許可するモードで開かれている必要があります。The file must be open in a mode that permits writing. ファイルが拡張される場合は、null 文字 ('\0') が追加されます。Null characters ('\0') are appended if the file is extended. ファイルが切り捨てられる場合、短くなったファイルの末尾からファイルの元の長さまでのすべてのデータは失われます。If the file is truncated, all data from the end of the shortened file to the original length of the file is lost.

_chsize_sファイル サイズとして 64 ビット整数を受け取り、4 GB を超えるファイル サイズを処理できます。_chsize_s takes a 64-bit integer as the file size, and therefore can handle file sizes greater than 4 GB. _chsizeは 32 ビット ファイルのサイズに制限されます。_chsize is limited to 32-bit file sizes.

この関数は、パラメーターを検証します。This function validates its parameters. 場合fdは無効なパラメーター ハンドラーが呼び出される、有効なファイル記述子またはサイズが 0 より小さい」の説明に従ってパラメーターの検証です。If fd is not a valid file descriptor or size is less than zero, the invalid parameter handler is invoked, as described in Parameter Validation.


ルーチンによって返される値Routine 必須ヘッダーRequired header オプション ヘッダーOptional header
_chsize_s_chsize_s <io.h><io.h> <errno.h><errno.h>

互換性の詳細については、「 互換性」を参照してください。For more compatibility information, see Compatibility.

関連項目See also

ファイル処理File Handling
_creat、_wcreat_creat, _wcreat
_open、_wopen_open, _wopen