ERLEDIGT
JA
JA
ANTWORTEN
1
1
ZUGRIFFE
4512
4512
EMPFEHLEN
-
Hallo zusammen,
ich suche schon eine ganze Zeit hier im Forum nach einer Lösung für mein Problem.
Kurz und knapp:
Die Textdatei sieht in etwa so aus
----------------------------------------------------------------------------------------------------------------------
Textdatei: Name
----------------------------------------------------------------------------------------------------------------------
Nr. Bauteildatei X-Pos Y-Pos Z-Pos X-Rot Y-Rot Z-Rot
----------------------------------------------------------------------------------------------------------------------
1 test0.5.wrl 0 0 7 0 0 0
2 test1.0.wrl 0 0 0 0 0 0
3 nochwas_1.wrl 0 0 32 0 0 0
4 wand.wrl 85 153 63 0 0 0
5 wand.wrl 85 153 291 0 0 0
6 wand.wrl -146 -123 39 0 0 0
7 wand.wrl -146 -123 315 0 0 0
8 wand.wrl 10 -268 39 0 0 0
9 wand.wrl 10 -268 315 0 0 0
10 wand.wrl 290 -288 57 0 0 0
11 wand.wrl 290 -288 297 0 0 0
12 wand.wrl -198 38 223 0 0 90
13 wand.wrl -198 -162 130 0 0 90
14 nochwas_2.wrl -178 -262 177 0 0 0
15 end.wrl 0 0 352 0 0 0
Zwischen den Zahlen sind mehrere Leerzeichen.
Ich möchte nun die Textdatei in C++ auslesen und in jeder Zeile in der ".wrl" vorkommt Bauteildatei, X-Pos, Y-Pos, Z-Pos, X-Rot, Y-Rot und Z-Rot je einzeln in einer Variable/Array speichern und die Anzahl der Zeilen um eins erhöhen.
Angefangen habe ich mal so, leider ist mein C++ noch nicht wirklich gut, daher bitte ich um eure Hilfe.
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
#include <iostream> #include <fstream> #include <string> using namespace std; void main() { char line[1024]; ifstream Filename; int lae; Filename.open("K107.txt", ios::in|ios::binary); if (Filename.is_open()) { while(!Filename.eof()){ Filename.getline(line, 1024); fprintf(stderr, "line: %s\n", line); } } cin.peek(); }
Viele Grüße
-
Für den Fall, dass es jemanden interessiert, ich bin weiter gekommen

So schaut's mittlerweile aus
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
#include <stdio.h> #include <string.h> #include <iostream> using namespace std; void main() { //Hilfs-Puffer char line[1024]; int row = 0; // Datei zum Lesen öffnen FILE *fp = fopen("K107.txt", "r"); // wenn die Datei existiert if(fp) { // bis zum Ende der Datei while(!feof(fp)) { // Hilfs-Puffer leeren strcpy_s(line, 1024, ""); // eine Zeile einlesen fgets(line, 1024, fp); // String abschließen line[strlen(line)] = '\0'; /*len = strlen(line); cout << len << endl;*/ // Verarbeitung der Zeile // über strstr kann ein Teilstring gesucht werden if(strstr(line, "wrl")){ int iv[7]; char filename[128]; sscanf(line, "%d %s %d %d %d %d %d %d", iv, filename, iv+1, iv+2, iv+3, iv+4, iv+5, iv+6); cout << iv[0] << " " << filename << " " << iv[1] << endl; // Anzahl gefundene Zeilen erhöhen row++; } } fclose(fp); cout << "Es sind " << row << " Reihen." << endl; } cin.peek(); }
Ähnliche Themen
-
Nach einem Wort suchen
Von kayut im Forum Relationale DatenbanksystemeAntworten: 1Letzter Beitrag: 11.05.10, 19:41 -
Per Konsole in mehreren (allen) Dateien nach einem Wort suchen
Von tutorial-hilfe im Forum Linux & UnixAntworten: 8Letzter Beitrag: 30.04.08, 15:06 -
[C++]Nach String suchen, teilen und speichern
Von Seelenquell im Forum C/C++Antworten: 27Letzter Beitrag: 25.06.07, 09:27 -
Aus PHP Quelltext oder Seite ein Wort suchen und zählen
Von starrider im Forum PHPAntworten: 2Letzter Beitrag: 14.05.05, 12:54 -
immer nach dem gleichen wort suchen und position speichern
Von mrno im Forum JavaAntworten: 2Letzter Beitrag: 31.01.05, 17:33





Zitieren
Login






