Hi, I have some code. Everything works as it should, but, when I call view_all_contacts() to print the data, each line doesn't line up as it should. I get tab keys between each line.
The problem code is this:
printf("\n\e[1;34mNAME : \e[0;37m%s\n",name1);
printf("\e[1;34mMOB NO. : \e[0;37m%s\n",mob);
Here is the rest of the code:
void add_contact();
void search_contact();
void delete_contact();
void view_all_contact();
void add_contact()
{
FILE *fp;
fp=fopen("contact.txt","a+");
printf("\e[20;10H\e[1;34mName : \e[0;37m" );
char name[20];
scanw("%s",name);
printf("\e[21;10H\e[1;34mMob No. : \e[0;37m" );
char mob[20];
scanw("%s",mob);
fprintf(fp,"%s %s ",name,mob);
fclose(fp);
}
void search_contact()
{
FILE *fp;
fp=fopen("contact.txt","r");
printf("\e[20;10H\e[1;34mSearch : \e[0;37m");
char name[20];
scanw("%s",name);
char name1[20],mob[20];
while(fscanf(fp,"%s %s",name1,mob)!=EOF)
{
if(strcmp(name,name1)==0)
{
printf("\e[20;10H\e[1;34mNAME : \e[0;37m%s\n",name1);
printf("\e[21;10H\e[1;34mMOB NO. : \e[0;37m%s\n",mob);
}
}
fclose(fp);
}
void delete_contact()
{
FILE *fp,*fp1;
fp=fopen("contact.txt","r+");
fp1=fopen("temp.txt","w");
printf("\e[20;10H\e[1;34mEnter Name : \e[0;37m");
char name[20];
scanw("%s",name);
char name1[20],mob[20];
while(fscanf(fp,"%s %s",name1,mob)!=EOF)
{
if(strcmp(name,name1)==0)
{
continue;
}
fprintf(fp1,"%s %s\n",name1,mob);
}
fclose(fp);
fclose(fp1);
fp=fopen("contact.txt","w");
fp1=fopen("temp.txt","r");
while(fscanf(fp1,"%s %s",name1,mob)!=EOF)
{
fprintf(fp,"%s %s\n",name1,mob);
}
fclose(fp);
fclose(fp1);
remove("temp.txt");
}
void view_all_contact()
{
FILE *fp;
fp=fopen("contact.txt","r");
char name1[20],mob[20];
while(fscanf(fp,"%s %s",name1,mob)!=EOF)
{
printf("\n\e[1;34mNAME : \e[0;37m%s\n",name1);
printf("\e[1;34mMOB NO. : \e[0;37m%s\n",mob);
}
fclose(fp);
}
Can someone tell me what is wrong with the code? Thanks for your time.