Video: Parrot Minidrones - MAMBO - Tutorial #1: Setup 2024
Wanneer u vanuit een bestand leest, kunt u de extractie -operator >> gebruiken. Deze operator is heel gemakkelijk te gebruiken, op voorwaarde dat je herkent dat de zin "Kijk mama, geen kanttekeningen! "Is gewoon niet van toepassing op de extractie-operator.
Stel dat u een bestand met de naam Numbers heeft. txt met de volgende tekst op één regel:
100 50 30 25
Je kunt deze cijfers gemakkelijk lezen met de volgende code. Zorg eerst dat je # include (maar niet fstream. H, want je pikt een oud, verouderd, yucky bestand op) en # include. En je hebt waarschijnlijk de regel nodig met namespace std; als u een nieuwere compiler en bibliotheek gebruikt.
Het is belangrijk om enkele variabelen te definiëren om de gegevens te bevatten die u wilt lezen. Deze variabelen (te vinden in het voorbeeld FileRead01) werken prima:
tekenreeksgewicht; snaar hoogte; reeksbreedte; string diepte;
De variabelen definiëren de statistieken voor een type widget dat u wilt bouwen. Nadat u de variabelen op hun plaats hebt gezet, zal deze code het werk doen:
ifstream MyFile ("Numbers. Txt"); MyFile >> gewicht; MyFile >> height; MyFile >> width; MyFile >> diepte;
In de voorgaande code, het invoerbestand, Numbers. txt, had zijn nummers gescheiden met spaties. Je kunt ze ook van elkaar scheiden met newline-tekens, zoals deze:
100 50 30 25
Het maakt de applicatie niets uit. Het zoekt naar witte ruimte, , een willekeurig aantal spaties, tabbladen, en nieuwe regels. U kunt de gegevens opmaken zodat deze eruitzien als in het volgende voorbeeld en de toepassing leest ze nog steeds correct in.
100 50 30 25
Wanneer u te maken hebt met het standaard invoerobject cin, gelden dezelfde regels over witruimte: als u in vier getallen leest, zoals het volgende voorbeeld, dan is het cin-object, zoals het ifstream-object, zal de nummers scheiden op basis van de witte ruimte.
cin >> gewicht; cin >> hoogte; cin >> width; cin >> diepte;
Als de gebruiker per ongeluk een spatie invoegt, past de computer de gescheiden waarden op twee plaatsen toe - beide niet correct. Doe voorzichtig!
Zorg er bij het lezen van informatie uit een bestand voor dat u de volgorde van de informatie duidelijk hebt gedefinieerd. Zorg er met andere woorden voor dat u een protocol voor de informatie hebt afgesproken. Anders krijg je waarschijnlijk fouten en vergissingen en zullen je collega's iemand de schuld geven. Dat is de manier waarop computermensen zijn.
Natuurlijk wilt u controleren of de toepassing echt werkt. Door deze code toe te voegen, volstaat het:
cout << "weight =" << weight << "rn"; cout << "height =" << height << "rn"; cout << "width =" << width << "rn"; cout << "depth =" << depth;
Wanneer u de toepassing uitvoert, ziet u het resultaat van het lezen van het bestand.Dit is wat u zou moeten zien:
Gewicht = 100 Hoogte = 50 Breedte = 30 Diepte = 25