C/Visual C - importante

 
Vista:

importante

Publicado por camilo peralta (1 intervención) el 15/08/2004 18:54:49
Hola.
Buenas tardes.
Hace poco empece a programar, y empece a ver su pagina. Esta muy buena. Me ayudo bastante. Ahora queria realizar una consulta.
En C. (en mi consulta anterior puse C++, pero en realidad es en C)
Como se hace para pasar un archivo binario a uno de texto??'
Y como se hace para pasar uno de texto a uno binario???
Desde ya si me pueden ayudar les pido, porfavor ,que me manden un mensaje lo mas rapido posible.
Esto lo estaba realizando mediante los parametros argc y argv.
Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Diferencia entre texto y binario = 1 bit

Publicado por s (16 intervenciones) el 17/08/2004 03:03:26
Hola.

Creo que no entendí bien el sentido de tu pregunta. En C, cuando abres un archivo para escritura o lectura lo puedes hacer en modo binario o modo texto.
La diferencia es que se leen o escriben grupos de 7 bits en modo texto y grupos de 8 en modo binario. De hecho, el modo de apertura como texto es un cuestión heredada de sistemas muy antiguos. Incluso, en sistemas operativos recientes todos los archivos se abren o crean en modo binario, aunque le indiques que es texto.

Según lo que entendí, para pasar de archivo de texto a binario, tendrías que abrir un archivo en modo de texto, leer byte por byte(de 7 bits), y guardarlo en un archivo abierto en modo binario, de la misma forma, byte por byte(de 8 bits). Obviamente que el bit que te falta lo rellenas con un 0.

Si quieres más detalles en cuanto a tratamiento de bits, apertura de archivos en modo binario y texto, te recomiendo que escribas en el foro preguntando por lo que desees detallar.

Saludos.


Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Diferencia entre texto y binario = 1 bit

Publicado por Googol (255 intervenciones) el 18/08/2004 23:12:52
Hoola!

Yo no estoy del todo de acuerdo con [email protected] ...
En disco lo que se guardan son BYTES, de 8 bits. En algún momento anterior, los bytes eran de 7 bits... y de otros tamaños más esotéricos, pero eso es agua muy pasada.
Desde el punto de vista de más abajo, todos los ficheros son de bytes, y por lo tanto, todos los ficheros son "de tipo binario".
¿Qué es un fichero de texto? Es un fichero normal y corriente que se "autoimpone" la restricción de no almacenar cualquier byte, sino sólo aquellos bytes que tengan unos determinados valores. ¿Cuales? Los que representan códigos alfanuméricos, el valor especial de "retorno de carro", de "tabulador", y algunos otros más.
Lo importante de la diferencia entre ficheros binarios y ficheros de texto, es que desde los lenguajes de programación, normalmente tenemos herramientas que nos facilitan trabajar con los ficheros de texto. Usando alguna función de la librería, le podemos decir: "lee la siguiente línea", y la función irá leyendo byte a byte, hasta encontrarse el caracter especial de retorno de carro. Pero nada más. Internamente no hay diferencia.
De hecho, es posible abrir un fichero que se creó usando las funciones de ficheros de texto (grabar línea, escribir número...) usando las funciones de ficheros binarios (leer grupos de bytes), pero nos tocará a nosotros interpretar a mano esos bytes.
Y al revés también... lo que pasa es que si abrimos un fichero que tiene caracteres no alfanuméricos con las funciones de ficheros de texto, las volveremos un poco locas.

Otra cosa diferente es que cuando guardas información (por ejemplo, el número "53") en un fichero de texto y en uno binario, el resultado será, seguramente, diferente. ¿Por qué? Porque en uno de texto se meterá el caracter ASCII del dígito 5, luego el del dígito 3, y luego un retorno de carro o algo parecido.
En uno binario se meten los cuatro bytes que representan el entero con signo del número 53.

Espero no haberte liado más...

Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Gracias por la correcion

Publicado por s (16 intervenciones) el 20/08/2004 08:44:04
HOla.
Gracias por las correcciones, mejor que te corrijan aquí y no en otros lados.
Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar