så langt.
#include <stdio.h>
#include <stdlib.h>
void fileconverterEt(char inputfil[], char outputfil[])
/*postcondition: Værdierne som inputfil og outputfil peger på,
bliver sat til funktionkaldelse fopen.*/
{
FILE *pt1, *pt2;
char ch, lastCh = 0;
pt1 = fopen(inputfil,"r");
pt2 = fopen(outputfil,"w");
while((ch = fgetc(pt1)) != EOF) //end of file
{
if(ch == '.')
{
ch = ',';
}
if(ch == ' ' && lastCh == ' ')
{
}
else
fprintf(pt2,"%c",ch);
{
lastCh = ch;
}
}
fclose(pt1);
fclose(pt2);
}
void fileconverterTo(char inputfilTo[], char outputfilTo[])
{
FILE *pt2, *pt3;
char ch, lastCh = 0;
pt2 = fopen(inputfilTo,"r");
pt3 = fopen(outputfilTo,"w");
while((ch = fgetc(pt2)) != EOF)
{
if(ch == ' ')
{
ch = ';';
}
fprintf(pt3,"%c",ch);
}
fclose(pt2);
fclose(pt3);
}
void fileconverterTre(char inputfil[], char outputfil[], char TegnEt, char TegnTo)
{
FILE *pt1, *pt2;
char ch, lastCh = 0;
pt1 = fopen(inputfil,"r");
pt2 = fopen(outputfil,"w");
while((ch = fgetc(pt1)) != EOF)
{
if(ch == TegnEt)
{
ch = TegnTo;
}
if(ch == TegnEt && lastCh == TegnEt)
{
}
else
fprintf(pt2,"%c",ch);
{
lastCh = ch;
}
}
fclose(pt1);
fclose(pt2);
}
int main()
{
fileconverterEt("input.txt", "output.txt");
fileconverterTo("output.txt", "outputTo.txt");
fileconverterTre("InputfilTre.txt", "OutputfilTre.txt", 'A', 'X');
system("PAUSE");
return 0;
}
Men hvordan så lave den anden del af opgaven, ved at lave en til loop?
Altså jeg skal vist få den til at inputfilen kun indeholder et skilletegn mellem dataene,
eller skal jeg få den til at slette overflødige skilletegn.