FILE* f = fopen("temp\\1.txt","r");
if (f)
{
fscanf(f, "%d %d %d %d %d", &n1, &n2, &n3, &n4, &n5);
fclose(f);
}
что то не работает. сохранение мемо в файл и его чтнение
Код:
и если n1=1 и n2=1 то записываем значения n3, n4, n5 в переменные N3,N4,N5.
и всё это должно выполнять для каждой строчки из мемо1. вот для этого я и ввёл цикл
А как он не работает? Что там за текст сохраняется в файл?
1 12 23344 555 - например
В чем проблема то? Что-то я не понял...
Цитата:
void __fastcall TForm1::Rab_stolClick(TObject *Sender)
{
int i;
int n=1016;
for (i=0;i<n;i++)
{
Memo1->Lines->Strings[0]=ski->Lines->Strings;
Memo1->Lines->SaveToFile(ExtractFilePath(ParamStr(0))+"temp\\1.txt");
}
int n1;
int n2;
int n3;
int n4;
int n5;
if (f)
{
fscanf(f, "%d %d %d %d %d", &n1, &n2, &n3, &n4, &n5);
if (n1=1)
{
if (n2=1)
{
Label1->Caption=n3;
}
}
fclose(f);
}
}
{
int i;
int n=1016;
for (i=0;i<n;i++)
{
Memo1->Lines->Strings[0]=ski->Lines->Strings;
Memo1->Lines->SaveToFile(ExtractFilePath(ParamStr(0))+"temp\\1.txt");
}
int n1;
int n2;
int n3;
int n4;
int n5;
if (f)
{
fscanf(f, "%d %d %d %d %d", &n1, &n2, &n3, &n4, &n5);
if (n1=1)
{
if (n2=1)
{
Label1->Caption=n3;
}
}
fclose(f);
}
}
вот что у меня на кнопке. и оно не работает.
В языке C++ (как и в C) оператор сравнения выглядит следующим образом: '==', а '=' - это оператор присваивания, поэтому, если ты хочешь проверить, равны ли n1 и n2 1, то нужно писать
if ((n1 == 1) && (n2 == 1))
...
а ты пишешь ерунду...
Цитата:
1 1 4 38 167 196
0 2 6
1 6 78 164 96
1 6 98 164 116
1 6 118 164 136
1 6 138 164 156
1 6 158 164 176
1 6 178 164 196
0 3 6
и мы анализируем этим цифры. сначала закачиваем первую строчку в мемо2. сохраням его в файл 1.тхт. потом
Цитата:
FILE* f = fopen("temp\\1.txt","r");
if (f)
{
fscanf(f, "%d %d %d %d %d", &n1, &n2, &n3, &n4, &n5);
fclose(f);
}
if (f)
{
fscanf(f, "%d %d %d %d %d", &n1, &n2, &n3, &n4, &n5);
fclose(f);
}
и если n1==1 и n2==1 то надо вывести в лабел1 значение n3/
и так все строчки исследовать. через цикл
Код:
char filename[30] = "c:\\1.txt";
Label1->Caption = "";
int n = Memo1->Lines->Count;
for (int i = 0; i < n; i++)
{
Memo2->Lines->Clear();
Memo2->Lines->Strings[0] = Memo1->Lines->Strings;
Memo2->Lines->SaveToFile(filename);
FILE * f = fopen(filename, "r");
int n1, n2, n3;
if (f)
{
fscanf(f, "%d %d %d", &n1, &n2, &n3);
fclose(f);
if ((n1 == 1) && (n2 == 1))
Label1->Caption = Label1->Caption + " " + IntToStr(n3);
}
}
Label1->Caption = "";
int n = Memo1->Lines->Count;
for (int i = 0; i < n; i++)
{
Memo2->Lines->Clear();
Memo2->Lines->Strings[0] = Memo1->Lines->Strings;
Memo2->Lines->SaveToFile(filename);
FILE * f = fopen(filename, "r");
int n1, n2, n3;
if (f)
{
fscanf(f, "%d %d %d", &n1, &n2, &n3);
fclose(f);
if ((n1 == 1) && (n2 == 1))
Label1->Caption = Label1->Caption + " " + IntToStr(n3);
}
}