Технически, да
Да, файл будет перезаписан, но только для длины записи.Если файл длиннее, в большинстве случаев (обычные файлы в основных системах) оставшиеся байты останутся неизменными.
Однако вам может быть интересно, будет ли файл при этом усечен точка: обычно (в тех же случаях) нет .Технически, усечение определяется реализацией для текстовых файлов и нет для двоичных файлов.
Я был бы удивлен, если бы современная система дажеУ было различие между текстом и двоичным кодом, разумеется, в системах Unix, Linux и BSD этого нет, и я подозреваю, что для некоторых теперь были добавлены определенные слова реализации *1026*, определенные для реализации.списанные ископаемые.Если это так, то в во всех важных случаях оставшиеся байты останутся неизменными и файл не будет усечен.
Теперь файловый API используется для многих вещей, которые не реализуютполный список абстракций файлов: например, UDP-сокеты, терминалы, накопители на магнитной ленте, произвольные контроллеры для оборудования, не предназначенного для хранения, и т. д. Было бы неразумно, по меньшей мере, даже использовать буферизованный пакет ввода-выводаписать такие каналы, но, возможно, они являются причиной пробела в спецификации.