Mam funkcje:
void zapisz1(char *in, char *a)
{
String h;
ofstream plik(in, ios::app);
plik << a <<endl;
for (int i=1; i<18; i++)
{
h = dynamic_cast<TEdit *>(FindComponent("Edit" + (String)i))->Text;
plik << h.c_str() << endl;
}
}
Która powinna pobiera nazwe oraz pierwsza linijke i powinna zapisywac do pliku o okreslonej nazwie.
Posluguje sie nia w ten sposob:
char zr1[]="Wydatki_2011.txt";
char zr2[]="Wydatki_2012.txt";
char zr3[]="Wydatki_2013.txt";
char zr4[]="Wydatki_2014.txt";
char zr5[]="Wydatki_2015.txt";
char zr6[]="Wydatki_2016.txt";
char m1[]="Styczeń";
char m2[]="Luty";
char m3[]="Marzec";
char m4[]="Kwiecień";
char m5[]="Maj";
char m6[]="Czerwiec";
char m7[]="Lipiec";
char m8[]="Sierpień";
char m9[]="Wrzesień";
char m10[]="Październik";
char m11[]="Listopad";
char m12[]="Grudzień";
int z=ComboBox1->ItemIndex;
int x=ComboBox2->ItemIndex;
switch(x)
{
case 0: {
if (z==0) {TForm1::zapisz1(zr1, m1);}
if (z==1) {TForm1::zapisz1(zr1, m2);}
if (z==2) {TForm1::zapisz1(zr1, m3);}
if (z==3) {TForm1::zapisz1(zr1, m4);}
if (z==4) {TForm1::zapisz1(zr1, m5);}
if (z==5) {TForm1::zapisz1(zr1, m6);}
if (z==6) {TForm1::zapisz1(zr1, m7);}
if (z==7) {TForm1::zapisz1(zr1, m8);}
if (z==8) {TForm1::zapisz1(zr1, m9);}
if (z==9) {TForm1::zapisz1(zr1, m10);}
if (z==10) {TForm1::zapisz1(zr1, m11);}
if (z==11) {TForm1::zapisz1(zr1, m12);}
}
case 1: {
if (z==0) {TForm1::zapisz1(zr2, m1);}
if (z==1) {TForm1::zapisz1(zr2, m2);}
if (z==2) {TForm1::zapisz1(zr2, m3);}
if (z==3) {TForm1::zapisz1(zr2, m4);}
if (z==4) {TForm1::zapisz1(zr2, m5);}
if (z==5) {TForm1::zapisz1(zr2, m6);}
if (z==6) {TForm1::zapisz1(zr2, m7);}
if (z==7) {TForm1::zapisz1(zr2, m8);}
if (z==8) {TForm1::zapisz1(zr2, m9);}
if (z==9) {TForm1::zapisz1(zr2, m10);}
if (z==10) {TForm1::zapisz1(zr2, m11);}
if (z==11) {TForm1::zapisz1(zr2, m12);}
}
case 2: {
if (z==0) {TForm1::zapisz1(zr3, m1);}
if (z==1) {TForm1::zapisz1(zr3, m2);}
if (z==2) {TForm1::zapisz1(zr3, m3);}
if (z==3) {TForm1::zapisz1(zr3, m4);}
if (z==4) {TForm1::zapisz1(zr3, m5);}
if (z==5) {TForm1::zapisz1(zr3, m6);}
if (z==6) {TForm1::zapisz1(zr3, m7);}
if (z==7) {TForm1::zapisz1(zr3, m8);}
if (z==8) {TForm1::zapisz1(zr3, m9);}
if (z==9) {TForm1::zapisz1(zr3, m10);}
if (z==10) {TForm1::zapisz1(zr3, m11);}
if (z==11) {TForm1::zapisz1(zr3, m12);}
}
case 3: {
if (z==0) {TForm1::zapisz1(zr4, m1);}
if (z==1) {TForm1::zapisz1(zr4, m2);}
if (z==2) {TForm1::zapisz1(zr4, m3);}
if (z==3) {TForm1::zapisz1(zr4, m4);}
if (z==4) {TForm1::zapisz1(zr4, m5);}
if (z==5) {TForm1::zapisz1(zr4, m6);}
if (z==6) {TForm1::zapisz1(zr4, m7);}
if (z==7) {TForm1::zapisz1(zr4, m8);}
if (z==8) {TForm1::zapisz1(zr4, m9);}
if (z==9) {TForm1::zapisz1(zr4, m10);}
if (z==10) {TForm1::zapisz1(zr4, m11);}
if (z==11) {TForm1::zapisz1(zr4, m12);}
}
case 4: {
if (z==0) {TForm1::zapisz1(zr5, m1);}
if (z==1) {TForm1::zapisz1(zr5, m2);}
if (z==2) {TForm1::zapisz1(zr5, m3);}
if (z==3) {TForm1::zapisz1(zr5, m4);}
if (z==4) {TForm1::zapisz1(zr5, m5);}
if (z==5) {TForm1::zapisz1(zr5, m6);}
if (z==6) {TForm1::zapisz1(zr5, m7);}
if (z==7) {TForm1::zapisz1(zr5, m8);}
if (z==8) {TForm1::zapisz1(zr5, m9);}
if (z==9) {TForm1::zapisz1(zr5, m10);}
if (z==10) {TForm1::zapisz1(zr5, m11);}
if (z==11) {TForm1::zapisz1(zr5, m12);}
}
case 5: {
if (z==0) {TForm1::zapisz1(zr6, m1);}
if (z==1) {TForm1::zapisz1(zr6, m2);}
if (z==2) {TForm1::zapisz1(zr6, m3);}
if (z==3) {TForm1::zapisz1(zr6, m4);}
if (z==4) {TForm1::zapisz1(zr6, m5);}
if (z==5) {TForm1::zapisz1(zr6, m6);}
if (z==6) {TForm1::zapisz1(zr6, m7);}
if (z==7) {TForm1::zapisz1(zr6, m8);}
if (z==8) {TForm1::zapisz1(zr6, m9);}
if (z==9) {TForm1::zapisz1(zr6, m10);}
if (z==10) {TForm1::zapisz1(zr6, m11);}
if (z==11) {TForm1::zapisz1(zr6, m12);}
}
}
Funkcja faktycznie otwiera plik i wstawia w pierwszej linijce wymagana wartość, lecz w przypadku gdy plik nie istnieje funkcja tworzy plik dla kazdego z wariantow zr* . A powinna tworzyć wylacznie dla jednego .... nie wiem co z tym fantem zrobic wiec prosze o pomoc.
Z góry dziękuję.