-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy patharchivo.cpp
75 lines (66 loc) · 1.09 KB
/
archivo.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#include "archivo.h"
Archivo::Archivo()
{
_linea=NULL;
_linea= new char[MAXCHAR2];
_c=0;
_f=0;
}
Archivo::~Archivo()
{
if(_linea) delete []_linea;
}
int Archivo::AbrirArchLectura(FILE *&Arch)
{
Arch=fopen("C:\\lab.txt","rt");
if(Arch==NULL)
{
cout<<"No se pudo abrir el Archivo de Entrada.\n";
return 0;
}
else
{
return 1;
}
}
int Archivo::AbrirArchEscritura(FILE *&Arch)
{
Arch=fopen("c:\\labNuevo.txt","wt");
if(Arch==NULL)
{
cout<<"No se pudo abrir el Archivo de Salida.\n";
return 0;
}
else
{
return 1;
}
}
void Archivo::CerrarArch(FILE*&Arch)
{
fclose(Arch);
}
void Archivo::parser(FILE*&Arch,int mapaTexto[][ANCHO_LAB])
{
fgets(_linea,MAXLINEA,Arch);
while (!feof(Arch))
{
_token = strtok(_linea,",");
for(_c=0;_c<ANCHO_LAB;_c++)
{
mapaTexto[_f][_c] = atoi(_token);
_token = strtok(NULL,",");
}
_f++;
fgets(_linea,MAXLINEA,Arch);
}
/*Para testear el parser:
for(_f=0;_f<ALTO_LAB;_f++)
{
for(_c=0;_c<ANCHO_LAB;_c++)
{
cout<<mapaTexto[_f][_c];
}
cout<<"\n";
}*/
}