stringtranslate.com

Archivo de texto

Un archivo de texto (a veces escrito textfile ; un antiguo nombre alternativo es flatfile ) es un tipo de archivo de computadora que está estructurado como una secuencia de líneas de texto electrónico . Un archivo de texto existe almacenado como datos dentro de un sistema de archivos de computadora . En sistemas operativos como CP/M y DOS , donde el sistema operativo no realiza un seguimiento del tamaño del archivo en bytes, el final de un archivo de texto se indica colocando uno o más caracteres especiales, conocidos como fin de archivo. Marcador (EOF), como relleno después de la última línea en un archivo de texto. En los sistemas operativos modernos, como Microsoft Windows y sistemas similares a Unix , los archivos de texto no contienen ningún carácter EOF especial, porque los sistemas de archivos de esos sistemas operativos realizan un seguimiento del tamaño del archivo en bytes. La mayoría de los archivos de texto necesitan tener delimitadores de final de línea , que se realizan de diferentes maneras según el sistema operativo. Es posible que algunos sistemas operativos con sistemas de archivos orientados a registros no utilicen delimitadores de nuevas líneas y almacenen principalmente archivos de texto con líneas separadas como registros de longitud fija o variable.

"Archivo de texto" se refiere a un tipo de contenedor, mientras que el texto sin formato se refiere a un tipo de contenido.

A nivel genérico de descripción, existen dos tipos de archivos informáticos: archivos de texto y archivos binarios . [1]

Almacenamiento de datos

Una representación icónica estilizada de un archivo de texto con formato CSV.

Debido a su simplicidad, los archivos de texto se utilizan comúnmente para almacenar información. Evitan algunos de los problemas encontrados con otros formatos de archivo, como el endianismo , el relleno de bytes o las diferencias en el número de bytes en una palabra de máquina . Además, cuando se producen daños en los datos de un archivo de texto, suele ser más fácil recuperar y continuar procesando el contenido restante. Una desventaja de los archivos de texto es que suelen tener una entropía baja , lo que significa que la información ocupa más almacenamiento del estrictamente necesario.

Es posible que un archivo de texto simple no necesite metadatos adicionales (aparte del conocimiento de su conjunto de caracteres ) para ayudar al lector en la interpretación. Un archivo de texto puede no contener ningún dato, lo cual es un caso de archivo de cero bytes .

Codificación

El juego de caracteres ASCII es el subconjunto compatible más común de juegos de caracteres para archivos de texto en inglés y, en general, se supone que es el formato de archivo predeterminado en muchas situaciones. Cubre el inglés americano, pero para el signo de la libra británica , el signo del euro o los caracteres utilizados fuera del inglés, se debe utilizar un conjunto de caracteres más completo. En muchos sistemas, esto se elige según la configuración regional predeterminada en la computadora en la que se lee. Antes de UTF-8, tradicionalmente se trataba de codificaciones de un solo byte (como ISO-8859-1 a ISO-8859-16 ) para idiomas europeos y codificaciones de caracteres amplios para idiomas asiáticos.

Debido a que las codificaciones necesariamente tienen sólo un repertorio limitado de caracteres, a menudo muy pequeños, muchas sólo se pueden utilizar para representar texto en un subconjunto limitado de lenguajes humanos. Unicode es un intento de crear un estándar común para representar todos los idiomas conocidos, y la mayoría de los conjuntos de caracteres conocidos son subconjuntos del gran conjunto de caracteres Unicode. Aunque existen múltiples codificaciones de caracteres disponibles para Unicode, la más común es UTF-8 , que tiene la ventaja de ser compatible con versiones anteriores de ASCII; es decir, cada archivo de texto ASCII es también un archivo de texto UTF-8 con significado idéntico. UTF-8 también tiene la ventaja de que es fácilmente autodetectable . Por lo tanto, un modo operativo común del software compatible con UTF-8, al abrir archivos de codificación desconocida, es probar primero UTF-8 y recurrir a una codificación heredada dependiente de la configuración regional cuando definitivamente no es UTF-8.

Formatos

En la mayoría de los sistemas operativos, el nombre de archivo de texto se refiere a un formato de archivo que sólo permite contenido de texto sin formato con muy poco formato (por ejemplo, sin negrita ni cursiva ). Estos archivos se pueden ver y editar en terminales de texto o en editores de texto simples . Los archivos de texto suelen tener el tipo MIMEtext/plain , normalmente con información adicional que indica una codificación.

Archivos de texto de Microsoft Windows

DOS y Microsoft Windows utilizan un formato de archivo de texto común, con cada línea de texto separada por una combinación de dos caracteres: retorno de carro (CR) y avance de línea (LF). Es común que la última línea de texto no termine con un marcador CR-LF, y muchos editores de texto (incluido el Bloc de notas ) no insertan uno automáticamente en la última línea.

En los sistemas operativos Microsoft Windows, un archivo se considera un archivo de texto si el sufijo del nombre del archivo (la " extensión del nombre de archivo ") es .txt. Sin embargo, muchos otros sufijos se utilizan para archivos de texto con fines específicos. Por ejemplo, el código fuente de los programas de computadora generalmente se guarda en archivos de texto que tienen sufijos de nombre de archivo que indican el lenguaje de programación en el que está escrito el código fuente.

La mayoría de los archivos de texto de Microsoft Windows utilizan codificación ANSI, OEM, Unicode o UTF-8. Lo que la terminología de Microsoft Windows llama "codificaciones ANSI" suelen ser codificaciones ISO/IEC 8859 de un solo byte (es decir, ANSI en los menús del Bloc de notas de Microsoft es en realidad "página de códigos del sistema", codificación heredada no Unicode), excepto en configuraciones regionales como el chino. , japonés y coreano que requieren juegos de caracteres de doble byte. Las codificaciones ANSI se usaban tradicionalmente como configuraciones regionales predeterminadas del sistema dentro de Microsoft Windows, antes de la transición a Unicode. Por el contrario, las codificaciones OEM, también conocidas como páginas de códigos DOS , fueron definidas por IBM para su uso en el sistema de visualización en modo texto original de IBM PC . Por lo general, incluyen caracteres gráficos y de dibujo lineal comunes en aplicaciones de DOS. Los archivos de texto de Microsoft Windows codificados con "Unicode" contienen texto en formato de transformación Unicode UTF-16 . Estos archivos normalmente comienzan con una marca de orden de bytes (BOM), que comunica el endianidad del contenido del archivo. Aunque UTF-8 no sufre problemas de endianidad, muchos programas de Microsoft Windows (es decir, el Bloc de notas) anteponen el contenido de los archivos codificados en UTF-8 con BOM, [2] para diferenciar la codificación UTF-8 de otras codificaciones de 8 bits. [3]

Archivos de texto Unix

En los sistemas operativos tipo Unix , el formato de los archivos de texto se describe con precisión: POSIX define un archivo de texto como un archivo que contiene caracteres organizados en cero o más líneas, [4] donde las líneas son secuencias de cero o más caracteres que no son de nueva línea más una terminación. carácter de nueva línea, [5] normalmente LF.

Además, POSIX define unarchivo imprimible como un archivo de texto cuyos caracteres son imprimibles o espacio o retroceso de acuerdo con las reglas regionales. Esto excluye la mayoría de los caracteres de control, que no se pueden imprimir. [6]

Archivos de texto de Apple Macintosh

Antes de la llegada de macOS , el sistema Mac OS clásico consideraba que el contenido de un archivo (la bifurcación de datos) era un archivo de texto cuando su bifurcación de recursos indicaba que el tipo de archivo era "TEXTO". [7] Las líneas de archivos de texto clásicos de Mac OS terminan con caracteres CR. [8]

Al ser un sistema similar a Unix, macOS utiliza el formato Unix para archivos de texto. [8] El identificador de tipo uniforme (UTI) utilizado para archivos de texto en macOS es "public.plain-text"; Las UTI adicionales y más específicas son: "public.utf8-plain-text" para texto codificado en utf-8, "public.utf16-external-plain-text" y "public.utf16-plain-text" para utf-16- texto codificado y "com.apple.traditional-mac-plain-text" para archivos de texto clásicos de Mac OS. [7]

Representación

Cuando lo abre un editor de texto, se presenta al usuario contenido legible por humanos. A menudo consiste en el texto sin formato del archivo visible para el usuario. Dependiendo de la aplicación, los códigos de control pueden representarse como instrucciones literales sobre las que actúa el editor o como caracteres de escape visibles que pueden editarse como texto sin formato. Aunque puede haber texto sin formato en un archivo de texto, los caracteres de control dentro del archivo (especialmente el carácter de fin de archivo) pueden hacer que el texto sin formato no se vea mediante un método particular.

Ver también

notas y referencias

  1. ^ Lewis, Juan (2006). Informática iluminada . Jones y Bartlett. ISBN 0-7637-4149-3.
  2. ^ "Uso de marcas de orden de bytes". Internacionalización de Aplicaciones Windows . Microsoft . 7 de enero de 2021. Archivado desde el original el 21 de febrero de 2023 . Consultado el 21 de abril de 2022 .
  3. ^ Freytag, Asmus (18 de diciembre de 2015). "Preguntas frecuentes: UTF-8, UTF-16, UTF-32 y BOM". El Consorcio Unicode . Consultado el 30 de mayo de 2016 . Sí, UTF-8 puede contener una lista de materiales. Sin embargo, no hay diferencia en cuanto al endianidad del flujo de bytes. UTF-8 siempre tiene el mismo orden de bytes. Una lista de materiales inicial solo se utiliza como firma, una indicación de que un archivo de texto que de otro modo no estaría marcado está en UTF-8. Tenga en cuenta que algunos destinatarios de datos codificados en UTF-8 no esperan una lista de materiales. Cuando se utiliza UTF-8 de forma transparente en entornos de 8 bits, el uso de una BOM interferirá con cualquier protocolo o formato de archivo que espere caracteres ASCII específicos al principio, como el uso de "#!" de al comienzo de los scripts de shell de Unix.
  4. ^ "Archivo de texto 3.403". IEEE Std 1003.1, edición 2017 . Sociedad de Computación IEEE . Consultado el 1 de marzo de 2019 .
  5. ^ "Línea 3.206". IEEE Std 1003.1, edición 2013 . Sociedad de Computación IEEE . Consultado el 15 de diciembre de 2015 .
  6. ^ "3.284 Archivo imprimible". IEEE Std 1003.1, edición 2013 . Sociedad de Computación IEEE . Consultado el 15 de diciembre de 2015 .
  7. ^ ab "Identificadores de tipo uniforme declarados por el sistema". Guías y código de muestra . Apple Inc. 2009-11-17 . Consultado el 12 de septiembre de 2016 .
  8. ^ ab "Diseño de scripts para implementación multiplataforma". Biblioteca para desarrolladores de Mac . Apple Inc. 2014-03-10 . Consultado el 12 de septiembre de 2016 .

enlaces externos