Napisałem program który zapisuje do pliku tekstowego liczbe jak i litery (Zadana - liczby, Input - litery). Chciałbym teraz to odczytać i wysietlić w oknie output, ale nie wychodzi mi. w jaki sposób to prawidłowo robić? Z góry dziękuję za pomoc!
Kod: Zaznacz cały
#include <ansi_c.h>
#include <formatio.h>
#include <cvirte.h>
#include <userint.h>
#include "My.h"
static int panelHandle;
char value[200], buf[20], buf2[20];
int liczba;
FILE *fp;
int main (int argc, char *argv[])
{
if (InitCVIRTE (0, argv, 0) == 0)
return -1; /* out of memory */
if ((panelHandle = LoadPanel (0, "My.uir", PANEL)) < 0)
return -1;
DisplayPanel (panelHandle);
RunUserInterface ();
DiscardPanel (panelHandle);
return 0;
}
int CVICALLBACK ZapiszCB (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
switch (event)
{
case EVENT_COMMIT:
GetCtrlVal (PANEL, PANEL_ZADANA, &liczba);
SetCtrlVal (PANEL, PANEL_WSKAZNIK, liczba);
GetCtrlVal (PANEL, PANEL_STRINGINPUT, value);
SetCtrlVal (PANEL, PANEL_STRINGOUTPUT, value);
// fp=fopen("D:\\test.txt", "a");
// fprintf (fp, "LINIA;");
// fprintf (fp, "MASZYNA;");
// fprintf (fp, "GODZINA;");
// fprintf (fp, "DATA;");
// fprintf (fp, "ID RPT;");
// fprintf (fp, "12NC;");
// fprintf (fp, "ZLECENIE;");
// fprintf (fp, "ILOSC TEST;");
// fprintf (fp, "DO;");
// fprintf (fp, "AT;");
// fprintf (fp, "DT\n");
// fprintf (fp, "%s;", value);
// fclose (fp);
Fmt (buf, "%s<%i", liczba); // konwesja z liczby int do char
fp = fopen ("D:\\test.txt", "a");
fputs(value, fp);
fputs(buf, fp);
fputs(".................\n", fp);
fputs(".................\n", fp);
fclose(fp);
fp=fopen("D:\\test.txt", "r");
//Fmt (buf2, "%s<%i", fp);
SetCtrlVal (PANEL, PANEL_STRINGOUTPUT, &fp);
break;
}
return 0;
}
int CVICALLBACK ExitCB (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
switch (event)
{
case EVENT_COMMIT:
QuitUserInterface (0);
break;
}
return 0;
}