bom dia!
estou tentando salvar os dados de uma struct em um arquivo txt...
Se for só um campo blz. eu gravo.. agora como concatenar tudo? Supondo que a minha struct tem os campos nome, ra, idade, sexo. ?
Abraços
Concatenar Campos De Uma Struct ?
Started By danilodepolli, 07/10/2005, 10:55
3 replies to this topic
#1
Posted 07/10/2005, 10:55
Danilo Depolli
danilo@camphost.com.br
CAMPHOST - 1º MES GRATIS EM QUALQUER PLANO! HOSPEDAGEM WEB
QUER PATROCINIO FREE? ENTRE EM CONTATO
ICQ: 7695319
MSN: danilodepolli@bol.com.br
danilo@camphost.com.br
CAMPHOST - 1º MES GRATIS EM QUALQUER PLANO! HOSPEDAGEM WEB
QUER PATROCINIO FREE? ENTRE EM CONTATO
ICQ: 7695319
MSN: danilodepolli@bol.com.br
#2
Posted 10/10/2005, 11:36
Posta o pedaço do código pra analisar melhor.. já tentou usar a função strcat???bom dia!
estou tentando salvar os dados de uma struct em um arquivo txt...
Se for só um campo blz. eu gravo.. agora como concatenar tudo? Supondo que a minha struct tem os campos nome, ra, idade, sexo. ?
Abraços
"Buscai o Reino de Deus e o resto virá por acréscimo de misericórdia!!" By Mateus
"Quanto mais sei, mais sei que nada sei" By Sócrates
"O pior câncer é o EGOÍSMO!!" By Anônimo
"A Tecnologia é boa, mas deixa as pessoas EGOÍSTAS!!" By Anônimo
"Quanto mais sei, mais sei que nada sei" By Sócrates
"O pior câncer é o EGOÍSMO!!" By Anônimo
"A Tecnologia é boa, mas deixa as pessoas EGOÍSTAS!!" By Anônimo
#3
Posted 10/10/2005, 12:00
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
struct alunos {
char nome[50];
char ra[12];
int idade;
};
void ler(struct alunos cad[10]) {
int i; char lixo[2];
for(i=0;i<4;i++){
printf("Digite o nome do aluno %d\n",i);
fgets(cad[i].nome,50,stdin);
printf("digite o ra do aluno %d.\n",i);
scanf("%s",cad[i].ra);
printf("Digite a idade do aluno %d.\n",i);
scanf("%d%c",&cad[i].idade,lixo);
}
};
main()
{
struct alunos cad[3];
char str[80];
int i;
FILE *fp;
if((fp = fopen("arq.txt", "w")) == NULL ){
printf("o arquivo nao pode ser aberto.\n");
exit(1);
}
ler(cad);
i++;
for(i=0;i<4;i++){
strcat(cad[i].nome,"\n");
fputs(cad[i].nome, fp);
printf("Nomes: %s .\n",cad[i].nome);
}
}
Fiz dessa forma!
Danilo Depolli
danilo@camphost.com.br
CAMPHOST - 1º MES GRATIS EM QUALQUER PLANO! HOSPEDAGEM WEB
QUER PATROCINIO FREE? ENTRE EM CONTATO
ICQ: 7695319
MSN: danilodepolli@bol.com.br
danilo@camphost.com.br
CAMPHOST - 1º MES GRATIS EM QUALQUER PLANO! HOSPEDAGEM WEB
QUER PATROCINIO FREE? ENTRE EM CONTATO
ICQ: 7695319
MSN: danilodepolli@bol.com.br
#4
Posted 11/10/2005, 08:08
ve se dessa forma o ajuda:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
struct alunos {
char nome[50];
char ra[12];
int idade;
};
void ler(struct alunos cad[10]) {
int i; char lixo[2];
for(i=0;i<4;i++){
printf("Digite o nome do aluno %d\n",i);
scanf("%s",cad[i].nome);//fgets(cad[i].nome,50,stdin);
printf("digite o ra do aluno %d.\n",i);
scanf("%s",cad[i].ra);
printf("Digite a idade do aluno %d.\n",i);
scanf("%d",&cad[i].idade);
}
};
main()
{
struct alunos cad[3];
char str[80]; char idade[5];
int i;
FILE *fp;
if((fp = fopen("arq.txt", "w")) == NULL ){
printf("o arquivo nao pode ser aberto.\n");
exit(1);
}
ler(cad);
i++;
for(i=0;i<4;i++)
{
strcat(cad[i].nome,"\n");
strcat(cad[i].ra,"\n");
sprintf(idade,"%d\n",cad[i].idade); //CONVERTE a idade INT para STR
fputs(cad[i].nome, fp);
fputs(cad[i].ra, fp);
fputs(idade, fp);
}
}
"Buscai o Reino de Deus e o resto virá por acréscimo de misericórdia!!" By Mateus
"Quanto mais sei, mais sei que nada sei" By Sócrates
"O pior câncer é o EGOÍSMO!!" By Anônimo
"A Tecnologia é boa, mas deixa as pessoas EGOÍSTAS!!" By Anônimo
"Quanto mais sei, mais sei que nada sei" By Sócrates
"O pior câncer é o EGOÍSMO!!" By Anônimo
"A Tecnologia é boa, mas deixa as pessoas EGOÍSTAS!!" By Anônimo
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)










