Solución:
En el nivel inferior, todos son bits … cierto. Sin embargo, algunos canales de transmisión tienen siete bits por byte y otros canales de transmisión tienen ocho bits por byte. Si transmite texto ASCII a través de un canal de siete bits, todo está bien. Los datos binarios se estropean.
Además, los diferentes sistemas usan diferentes convenciones para los finales de línea: LF y CRLF son comunes, pero algunos sistemas usan CR o NEL. Un modo de transmisión de texto convertirá los finales de línea automáticamente, lo que dañará los archivos binarios.
Sin embargo, todo esto es sobre todo de interés histórico en estos días. La mayoría de los canales de transmisión son de ocho bits (como HTTP) y la mayoría de los usuarios están de acuerdo con cualquier final de línea que obtengan.
Algunos ejemplos de canales de 7 bits: SMTP (nominalmente, sin extensiones), SMS, Telnet, algunas conexiones seriales. Internet no siempre se basó en TCP / IP, y se nota.
Además, la especificación HTTP establece que,
Cuando están en forma canónica, los subtipos de medios del tipo “texto” usan CRLF como salto de línea de texto. HTTP relaja este requisito y permite el transporte de medios de texto con solo CR o LF que representan un salto de línea cuando se realiza de manera consistente para todo el cuerpo de la entidad.
Todos los archivos se guardan en uno de los dos formatos de archivo: binario o de texto. Los dos tipos de archivos pueden verse iguales en la superficie, pero sus estructuras internas son diferentes.
Si bien los archivos binarios y de texto contienen datos almacenados como una serie de (bits (valores binarios de 1 y 0), los bits de los archivos de texto representan caracteres, mientras que los bits de los archivos binarios representan datos personalizados.
Es importante distinguir entre los dos, ya que los distintos sistemas operativos tratan los archivos de texto de manera diferente. Por ejemplo, en * nix terminas tus líneas con solo n
mientras usa MS OS rn
y en Mac usas nr
. El software, como los clientes FTP, intenta cambiar los finales de línea en los archivos de texto para que coincidan con el sistema operativo de destino agregando / eliminando los caracteres. Esto es para asegurarse de que el archivo de texto se vea correctamente en el sistema operativo de destino.
por ejemplo, si crea un archivo de texto en * nix con saltos de línea e intenta copiarlo en un cuadro de Windows como un archivo binario y abrirlo en el bloc de notas, no verá ninguno de los finales de línea, sino solo una obstrucción de texto .