Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

JoaoNascimento

Escrever ficheiro mas excluir primeira linha

Mensagens Recomendadas

pinguim

Que queres dizer com excluir?

Por uma linha em branco?


"Rather than continuing to seek the truth, simply let go of your views" - David RossC, C++, C#, Pascal

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pinguim

Mas não estas a falar de um ficheiro de texto, pois não?

Presumi que estivesses a falar de um ficheiro de texto


"Rather than continuing to seek the truth, simply let go of your views" - David RossC, C++, C#, Pascal

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pinguim

então eh mt simples, e já te responderam...

isso vai por o teu cursor na linha seguinte (2a linha)

tens até a função fseek(), que te pode ajudar no que toca a posicionares-te num certo ponto do ficheiro, mas neste caso não vale a pena


"Rather than continuing to seek the truth, simply let go of your views" - David RossC, C++, C#, Pascal

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
JoaoNascimento

O meu codigo é o seguinte?

oid ler_dados_fich(DADOS *uc, int num)
{
char cabecalho[1000];
int i=0;
FILE *pfdados;

pfdados=fopen("dados_ucs_070410.txt","r");

if(pfdados==NULL)
{
	printf("Erro ao abrir o ficheiro! \n");
	system("pause");
}

fscanf(pfdados,"[^\n]\n",cabecalho);
//printf("%s\n",cabecalho);
for (i=0;i<num;i++)
    {
	fscanf( pfdados , "%[^\t]\t%d\t%d\t%[^\t]\t%d\t%[^\t]\t%d\t%[^\t]\t%f\t%f\t%f\t%f\t%f\t%f\t%f\t%f\t%f\t%f\t%f\t%f\t%f\t%f\t%f\n",uc[i].curso,&uc[i].ano,&uc[i].semestre,uc[i].nomeuc,&uc[i].ects,uc[i].area_cientifica,&uc[i].opcional,uc[i].doc_res,&uc[i].docentes,&uc[i].turm_t,&uc[i].turm_tp,&uc[i].turm_p,&uc[i].turm_pl,&uc[i].turm_ac,&uc[i].turm_ot,&uc[i].turm_s,&uc[i].t,&uc[i].tp,&uc[i].p,&uc[i].pl,&uc[i].ac,&uc[i].ot,&uc[i].s);
}
fclose(pfdados);
}

Já fiz como disseram mas continua a apresentar lixo no ficheiro de saida....

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pinguim

Eu não vejo nada que escreva no teu ficheiro, portanto não da para saber isso la muito bem...


"Rather than continuing to seek the truth, simply let go of your views" - David RossC, C++, C#, Pascal

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
JoaoNascimento

Pois peço dsclpa este é a função que le um ficheiro....

void all_bd(DADOS *uc, int num)
{
int i;
char nome[50];
FILE *pfdados;

fflush(stdin);
puts("Insira o nome com que quer gravar o ficheiro: "); gets(nome);

strcat(nome,".txt");

//Abertura do ficheiro
pfdados=fopen(nome,"w");

if( pfdados == NULL )
{
	printf("Erro de abertura\n");
}
else
{
	for (i=0;i<num;i++)
	{
		fprintf( pfdados ,"%s\t%s\t%s\t%d\t%d\t%s\t%f\t%d\t%d\t%f\t%f\t%f\t%f\t%f\t%f\t%f\t%f\t%f\t%f\t%f\t%f\t%f\t%f\n",uc[i].curso, uc[i].nomeuc, uc[i].area_cientifica, uc[i].ects, uc[i].opcional, uc[i].doc_res, uc[i].docentes, uc[i].ano, uc[i].semestre, uc[i].turm_t, uc[i].turm_tp, uc[i].turm_p, uc[i].turm_pl, uc[i].turm_ac, uc[i].turm_ot, uc[i].turm_s, uc[i].t, uc[i].p,uc[i].tp, uc[i].pl, uc[i].ac, uc[i].ot, uc[i].s);						
	}
}
puts("Obrigado\n");
system("pause");

}

Aqui sim é o que escreve

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.