Ver Mensaje Individual
  #3 (permalink)  
Antiguo 20/05/2012, 07:49
drakgoku1
(Desactivado)
 
Fecha de Ingreso: agosto-2011
Mensajes: 327
Antigüedad: 12 años, 8 meses
Puntos: 3
Respuesta: Comparar cadena passada con la de cadena de un fichero

Cita:
Iniciado por cesar_casla Ver Mensaje
Hola! no entendi bien q es lo que queres hacer, pero te respondo igual... No podes comparar var_mes directamente con una linea del fichero, primero tenes que recuperar esa linea en una variable(ya sea con fgets,fscanf,etc) y recien hacer la comparacion entre cadenas. Ademas tendrias q hacer un algoritmo para posicionarte en la linea del fichero
Esto es lo q entendi, sino te sirvio desarrolla un poco mas tu duda

Saludos
Ahora mismo tengo :

Código C:
Ver original
  1. agenda = fopen("paraules.txt","r");
  2.         if(agenda==NULL){
  3.             printf("\n\t El fitxer no existeix ");
  4.         }
  5.         else{
  6.             //printf("\n\t Quin dia busques ? "); scanf("%d",&var_dia);
  7.             printf("\n\t Quin mes busques ? "); scanf("%s",&var_mes);
  8.             //printf("\n\t Quin any busques ? "); scanf("%d",&var_any);
  9.             do{
  10.                 //fgets(agenda,c);
  11.                 fscanf(agenda,"%s",&c);
  12.                 if(strcmp(c,var_mes)==0 /*&& strcmp(c,var_dia)==0 && strcmp(c,var_any)==0 */){
  13.                     printf("%s ",c);
  14.                 }
  15.             }while(!feof(agenda));
  16.  
  17.         }fclose(agenda);

Claro si pongo por ejemplo " abril" y tuviera 4 me mostraría 4.

pero como cojo los números ?

Ejemplo introduzco día : 20 mes : abril año : 2040

Solo mostraría abril tantos como tenga el fichero y dentro del while (if) no puedo comparar %d ya que tengo strings + numbers.

Jo quiero que me muestre 1 hacia atrás para el dia y 1 hacia adelante para el mes. Sinceramente no se como hacerlo por eso hago chapuzas

Alguna solución ?

Gracias