С++: Работа с файлами

Все о программировании под *nix
RomeO
Заглянувший
Сообщения: 19
Зарегистрирован: 11 окт 2005, 17:40
Контактная информация:

С++: Работа с файлами

Сообщение RomeO »

1) Многоуважаемые коллеги, помогите разобраться, как можно выводить текст, находящийся в файле, если он находится не в первой строке.
Если я правильно понимаю, то команда
fprintf(add,"%s \n",j);
выводит строку до пробела с места, которое можно указать при помощи команды
fseek(add,10,SEEK_SET);
А вот что же делать, если хочется перейти на другую строку в файле, или, может, кто-нибудь может посоветовать более респектабельный вариант команд??
++
2) В следующем коде программы в файл записывается только два символьных массива, а числа из цикла for куда-то проподают, с чем это может ббыть связано??

void main(void)
{
int a=1, b=20, c, d;
char ch[15]; char p;
char s[10],l[10],j[15];
float k[100];
FILE *in, *out, *add;

in=fopen("Romeo.txt","w+");
puts("Enter s:\n");
gets(s);
puts("Enter l:\n");
scanf("%s",j);
fprintf(in,"%s \n",s);

fclose(in);
out=fopen("Romeo.txt","r+");
fscanf(in,"%s",&l);
printf("%s\n\n",l);

fclose(out);
in=fopen("Romeo.txt","a");
scanf("%d",&c);
fprintf(in,"%d \n",c);


for(int o=1;o<=4;o++)
{

printf("Vvedi p# %d\n",o);

scanf("%c\n",&p);
putc(p,in);
if(o==2)puts("\n\n\n");


}
fclose(in);

add=fopen("Romeo.txt","w");
fseek(add,10,SEEK_SET);

fprintf(add,"%s \n",j);
fclose(add);


getch();


}

Заранее огромное спасибо***

Lioxa
Неотъемлемая часть форума
Сообщения: 732
Зарегистрирован: 18 янв 2004, 22:29
Откуда: Минск
Контактная информация:

Re: С++: Работа с файлами

Сообщение Lioxa »

Ну во первых - это С, а никак не С++.

Читать со второй строки... Что бы не использовать fseek() можно читать по строчно, и просто игнорировать не нужные строки... Например задаёш счётчик, и увеличиваешь его при каждой операции чтения строки из файла, и ставишь условие - когда счётчик больше 1, то обрабаитывать строку.

вывод цифр: А компилятор ворнинги какие-нибудь даёт? Тояно не знаю, но может решётка что-то портит...

Ответить