Ich versuche, Informationen aus einer Textdatei zu sammeln, die Namen von Organisationen (ohne Leerzeichen) und Fließkommazahlen enthält. Ich möchte diese Informationen in einer Array-Struktur speichern.Detective Newline-Byte von filestream
Das Problem, das ich bisher habe, ist das Sammeln der Informationen. Hier ist ein Beispiel der Text-Datei:
CBA 12,3 4,5 7,5 2,9 4,1
TLS 3,9 1 8,6 12,8 4,9
kann ich bis zu 128 verschiedene Nummern für jede Organisation und bis zu 200 Organisationen in der Textdatei. Diese
ist, was meine Struktur sieht wie bisher:
struct callCentre
{
char name[256];
float data[20];
};
Mein Haupt:
int main()
{
callCentre aCentre[10];
getdata(aCentre);
calcdata(aCentre);
printdata(aCentre);
return 0;
}
Und die getdata Funktion:
void getdata(callCentre aCentre[])
{
ifstream ins;
char dataset[20];
cout << "Enter the name of the data file: ";
cin >> dataset;
ins.open(dataset);
if(ins.good())
{
while(ins.good())
{
ins >> aCentre[c].name;
for(int i = 0; i < MAX; i++)
{
ins >> aCentre[c].data[i];
if(ins == '\n')
break;
}
c++;
}
}
else
{
cout << "Data files couldnt be found." << endl;
}
ins.close();
}
Was ich versuche zu erreichen, In meiner getdata-Funktion ist dies: Speichern Sie den Namen der Organisation zuerst in der Struktur, dann lesen Sie jedes float in die Daten Arra y bis das Programm ein Newline-Byte erkennt. Bis jetzt funktioniert meine Überprüfung für das Newline-Byte jedoch nicht.
Angenommen, die Variablen c und MAX sind bereits definiert.
Wie soll ich das richtig machen?
Das hat genau das gemacht, was ich wollte. Vielen Dank. – Bobby