leer archivo con mmap()
Publicado por el loco (1 intervención) el 13/05/2008 07:01:16
hola a todos.
Escribo esto por qeu necesito urgentemente que me den una mano con unos programitas que estoy implementando:
Necesito leer un archivo por medio de proyeccion de archivos y que haga las siguientes tareas:
*imprimir las ultimas n lineas del archivo
*imprimir las lineas de un archivo que contengan cierta palabra
*reemplazas cierta letra minuscula por su correspondiente mayuscula
hice una lectura experimental del archivo /home/ubuntu/prueba.txt asi:
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include <fcntl.h>
#include <sys/mman.h>
int main(int argc, char *argv[])
{
int archivo,*map,i;
char *Path="/home/ubuntu/prueba.txt";
archivo=open(Path,O_RDONLY);
map = (int*)mmap(0, FILESIZE, PROT_READ, MAP_SHARED, archivo, 0);
for (i = 1; i <=100; i++)
{
printf("map[%d]=%d ",i,map[i]);
}
}
pero no logro saber como diferenciar una linea de otra ni tampoco una palabra de otra (ni siquiera una letra de otra) con los contenidos de map[]. Como puedo diferenciarlos?? Esto me esta volviendo loco, les agradesco cualquier ayuda.
Escribo esto por qeu necesito urgentemente que me den una mano con unos programitas que estoy implementando:
Necesito leer un archivo por medio de proyeccion de archivos y que haga las siguientes tareas:
*imprimir las ultimas n lineas del archivo
*imprimir las lineas de un archivo que contengan cierta palabra
*reemplazas cierta letra minuscula por su correspondiente mayuscula
hice una lectura experimental del archivo /home/ubuntu/prueba.txt asi:
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include <fcntl.h>
#include <sys/mman.h>
int main(int argc, char *argv[])
{
int archivo,*map,i;
char *Path="/home/ubuntu/prueba.txt";
archivo=open(Path,O_RDONLY);
map = (int*)mmap(0, FILESIZE, PROT_READ, MAP_SHARED, archivo, 0);
for (i = 1; i <=100; i++)
{
printf("map[%d]=%d ",i,map[i]);
}
}
pero no logro saber como diferenciar una linea de otra ni tampoco una palabra de otra (ni siquiera una letra de otra) con los contenidos de map[]. Como puedo diferenciarlos?? Esto me esta volviendo loco, les agradesco cualquier ayuda.
Valora esta pregunta
0