IPB
ЛогинПароль:

> Внимание!

1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Работа с файлом
сообщение
Сообщение #1


студент..
***

Группа: Пользователи
Сообщений: 287
Пол: Мужской
Реальное имя: Дмитрий

Репутация: -  2  +


Здравствуйте. Подскажите как сделать? Читает текстовый файл, в котором написана таблица, строки соответствуют строкам , столбцы разделены (разделителем-запятая), если значение цифра (целое или дробное), то она оставляется, если значение слово, то записывает его в массив и вместо слова ставит номер значения из этого массива. Для каждого столбца свой массив.
Начал реализовывать, но столкнулся с проблемой как считать слово и заменить его на номер в другом массиве, а в другой его записать.

#include <stdio.h>
#include <afx.h>
#include <conio.h>
#include <ctype.h>
#include <tchar.h>

FILE *fi,*fo;
int nline=0;
int count=0;
PSTR gpPos;

void main(){
char fname[]="test2.txt";
char fname2[]="output.txt";
// printf("\nVvedite imja fhodnogo faila: ");
// scanf("%s",&fname);

if((fi=fopen(fname,"r"))==NULL)
{
printf("\nOshibka otkrytija vhodnogo faila!");
getch();
exit(0);
}
if((fo=fopen(fname,"w"))==NULL)
{
printf("\nOshibka otkrytija vhodnogo faila!");
getch();
exit(0);
}

char c;
int elem[119];
while(!feof(fi))
{
c=fgetc(fi);
count++;
if ((c=='\n')||(c==EOF))
{
nline++;
elem[nline]=count;
count=0;
}
}

char line[120]="";
char *result;
fseek (fi, 0L, SEEK_SET);
int k=0;
while (!feof(fi))
{
result=fgets(line,elem[k],fi);
gpPos=(PSTR)result;
int n=sizeof(gpPos);
for(;;)
{ gpPos++;
int j=0;
char m[20];
if isalpha(gpPos)
{
for(;;){
gpPos++;
if (gpPos==',')
break;
}
m[j]=(char)gpPos;
gpPos=PSTR(j);
}
fputc(m[j],fo);
}
k++;
}
fclose(fi);
fclose(fo);
}

Пример входного файлаПрикрепленный файл  1.txt ( 17.67 килобайт ) Кол-во скачиваний: 458


Сообщение отредактировано: Clerick -


--------------------
После дождя обязательно выглянет солнце)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 18.05.2024 4:17
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name