• Sábado 14 de Diciembre de 2024, 18:54

Autor Tema:  Archivo Binario Como Secuencial? :s  (Leído 1543 veces)

luchot

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Archivo Binario Como Secuencial? :s
« en: Jueves 16 de Junio de 2005, 17:20 »
0
Buenos dias,

Tengo una duda con respecto a este tema, resulta que creo un fichero en modo binario y luego le agrego una linea, pero luego de crearlo puedo ver su contenido con el comando "cat" desde un shell cualquiera (trabajo sobre linux). Alquien tiene idea de porqué pasa esto?

Aquí está el codigo que estoy utilizando:

Citar
void crearArchivos(){
     FILE *fichero;
         
     fichero  = fopen("file.dat","r+b");
     
     // SI EL FICHERO NO EXISTE LO CREA
     if(!fichero) {
        fichero = fopen("file.dat","wb");
        fseek(fichero, 0, SEEK_END);
        // ESCRIBO CADENA DIRECTA " "
        fwrite("cualquier\n", sizeof(char [10]), 1, fichero);

        // ESCRIBO VARIABLE TIPO CHAR
        char cadena[10]="132456789\n";
        fwrite(&cadena, sizeof(char [10]), 1, fichero);
     }
     
     // CIERRA EL FICHERO
     fclose(fichero);
}

Luego de salir del programa ejecuto el comando "cat" y esta es la salida:

Citar
[root@server practica]# cat file.dat
cualquier
132456789

Por lo que el archivo no presenta ninguna diferencia con un archivo secuencial común....Alguna sugerencia?

Muchas gracias a todos;

Luchot

JuanK

  • Miembro de ORO
  • ******
  • Mensajes: 5393
  • Nacionalidad: co
    • Ver Perfil
    • http://juank.io
Re: Archivo Binario Como Secuencial? :s
« Respuesta #1 en: Jueves 16 de Junio de 2005, 17:31 »
0
*  El acceso binario, que permite almacenar y tener acceso a los datos de un archivo de cualquier tipo, resulta especialmente útil para los campos de longitud variable.
    * El acceso aleatorio, que permite almacenar y tener acceso a la información, por ejemplo de los registros, que se suponen idénticos en longitud.
    * El acceso secuencial, por último, que permite leer y escribir cadenas en archivos de texto.


como vez un archivo de texto escrito en binario o de manera secuancial... sigue siendo el mismo archivo de texto, no sera asi si un archivo binario (ejemplo: un exe) es copiado como secuencial porque seguramente se dañara.
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io

luchot

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Re: Archivo Binario Como Secuencial? :s
« Respuesta #2 en: Jueves 16 de Junio de 2005, 17:40 »
0
hola JuanK,

Gracias por tu respuesta, pero sinceramente no he comprendio lo que intentas explicar...puntualmente lo que necesito es trabajar con ficheros binarios en los cuales almaceno y leo Datos por cada linea (ya tengo las funciones de validación de entrada y tal hechas) pero que sus datos no sean "legibles", o sea, que sea un fichero binario, en donde su contenido solo pueda ser leído desde el programa y no de forma directa por un usuario común.

Espero que se entienda mi consulta,

Muchas gracias nuevamente;

Luchot

JuanK

  • Miembro de ORO
  • ******
  • Mensajes: 5393
  • Nacionalidad: co
    • Ver Perfil
    • http://juank.io
Re: Archivo Binario Como Secuencial? :s
« Respuesta #3 en: Jueves 16 de Junio de 2005, 18:04 »
0
BINARIO NO IMPLICA ILEGIBLE!  :ph34r:

binario , aleatorio o secuencial solo es la manera en que se leen o escriben los datos en el archivo, pero por ejemplo un archivo de texto no importa como lo escribas si secuencial, binario o aleatorio siempre sera legible pues es la misma informacion ...!!!

Si lo que quieres es hacer ilegible o parcialmente eilegible la informacion de un archivo tienes muchas opciones...

1- si los datos son numericos guardalos y leelos del archivo como datos int no como cadenas
2- si son datos mixtos es dectir hay texto y hay numeros, dberas aplicar un algritmo que guarde los datos en un fromato ilegible para el usuario y otro que lea los datos y los haga legibles para la aplicacion.

es decir si la info es:

ABC

podrias hacer un algoritmo para que en el archivo se guarde algo diferente, podrias por ejemplo hacer un algoritmo que te convierta eso en cualquier cosa:
152

y tener en el programa un algoritmo que interprete ese 152 como ABC
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io

luchot

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Re: Archivo Binario Como Secuencial? :s
« Respuesta #4 en: Viernes 17 de Junio de 2005, 16:46 »
0
Claro como el agua, ahora si me queda clara la diferencia entre un secuencial y un binario (aunque convengamos que en windows no es igual, he programado durante años en windows y tengo algunos conceptos incorpodaros :P)

Voy a hacer un par de funcioncitas de encripción y desencripción, queria evitarme ese trabajo, y pensé que ya habia algun metodo implementado (los datos son mixtos)

Gracias JuanK!

Luchot