El módulo OS en Python proporciona funciones para interactuar con el sistema operativo. OS viene bajo los módulos de utilidad estándar de Python. Este módulo proporciona una forma portátil de usar la funcionalidad dependiente del sistema operativo.
os.ftruncate()
El método en Python se usa para truncar el archivo correspondiente al descriptor de archivo especificado a la longitud especificada.
Este método es equivalente al os.truncate(fd, length)
método.
Sintaxis: os.ftruncate(fd, longitud)
Parámetros:
fd : el descriptor de archivo que representa el archivo que se va a truncar.
longitud : un valor entero que indica la longitud (en bytes) a la que se va a truncar el archivo.Tipo de devolución: este método no devuelve ningún valor.
Considere el siguiente texto como el contenido del archivo llamado Python_intro.txt .
Python es un lenguaje de programación de alto nivel y propósito general ampliamente utilizado. Inicialmente fue diseñado por Guido van Rossum en 1991 y desarrollado por Python Software Foundation. Fue desarrollado principalmente para enfatizar la legibilidad del código y su sintaxis permite a los programadores expresar conceptos en menos líneas de código. Python es un lenguaje de programación que le permite trabajar rápidamente e integrar sistemas de manera más eficiente.
Código #1:
Uso del método os.ftruncate()
# Python program to explain os.ftruncate() method # importing os module import os # Open the file and get # the file descriptor associated # with it using os.open() method fd = os.open("Python_intro.txt", os.O_RDWR) # Print the original size of the file (in bytes) print("File size (in bytes):", os.stat(fd).st_size) # Length (in Bytes) to which # the file will be truncated length = 72 # Truncate the file # to at most given length # using os.ftruncate() method os.ftruncate(fd, length) # Print the content of file size = os.stat(fd).st_size print(os.read(fd, size).decode("utf-8")) # Print the size of file (in bytes) print("File size (in bytes):", os.stat(fd).st_size)
File size (in bytes): 409 Content of file Python_intro.txt: Python is a widely used general-purpose, high level programming language File size (in bytes): 72
Considere el siguiente texto como el nuevo contenido del archivo llamado Python_intro.txt .
Python es un lenguaje de programación de alto nivel y propósito general ampliamente utilizado
Código #2:
Si la longitud especificada excede el tamaño del archivo
# Python program to explain os.ftruncate() method # importing os module import os # Open the file and get # the file descriptor associated # with it using os.open() method fd = os.open("Python_intro.txt", os.O_RDWR) # Print the original size of the file (in bytes) print("File size (in bytes):", os.stat(fd).st_size) # Length (in Bytes) to which # the file will be truncated length = 100 # Truncate the file # to at most given length # using os.ftruncate() method os.ftruncate(fd, length) # Print the content of file size = os.stat(fd).st_size print(os.read(fd, size).decode("utf-8")) # Print the size of file (in bytes) print("File size (in bytes):", os.stat(fd).st_size)
File size (in bytes): 72 Content of file Python_intro.txt: Python is a widely used general-purpose, high level programming language File size (in bytes): 100
Contenido real del archivo después de truncar el tamaño del archivo de 72 bytes a 100 bytes:
el contenido del archivo hasta su tamaño original no cambió, pero para aumentar el tamaño del archivo al tamaño especificado, se llenó con algunos caracteres no válidos.
Código #3:
Eliminar el contenido de un archivo usando el método os.ftruncate()
# Python program to explain os.ftruncate() method # importing os module import os # Open the file and get # the file descriptor associated # with it using os.open() method fd = os.open("Python_intro.txt", os.O_RDWR) # Print the original size of file (in bytes) print("File size (in bytes):", os.stat(fd).st_size) # specify the length as 0 # to delete the file content length = 0 # Truncate the file # to length 0 # using os.ftruncate() method os.ftruncate(fd, length) # Print the content of file size = os.stat(fd).st_size print(os.read(fd, size).decode("utf-8")) # Print the size of file (in bytes) print("File size (in bytes):", os.stat(fd).st_size)
File size (in bytes): 100 Content of file Python_intro.txt: File size (in bytes): 0