WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Zahlen aus Textfile auslesen und in Matrix packen

 

rowco

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.11.2008, 15:46     Titel: Zahlen aus Textfile auslesen und in Matrix packen
  Antworten mit Zitat      
Moin alle miteinander!

Ich war bis vor wenigen Tagen noch Matlab-Jungfrau und hab ein Problem mit dem Einlesen von Daten ins Matlab.

Anbei ist eine Textdatei "kreis.inp". Aus dieser Datei möchte ich die Zahlenreihen, die die Kontur definieren (also alles was zwischen "$ formatfrei und durch BLANK oder Komma getrennt" und "$ ENDE der Kontureingabe"), auslesen und sie in den Matlab Workspace als Matrix reinkriegen.

Mit dem selektiven Auslesen von Daten wurde hier schon mehrmals was gepostet, ich bin aber trotzdem (kläglich) gescheitert. Hoffe Ihr könnt mir helfen!

Danke und Grüße aus Hamburg!

kreis.txt
 Beschreibung:

Download
 Dateiname:  kreis.txt
 Dateigröße:  2.95 KB
 Heruntergeladen:  660 mal


Gast

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.11.2008, 18:07     Titel:
  Antworten mit Zitat      
Versuch z.B
Code:
fid=fopen('kreis.txt');
zeile=0;
lese=0;
% daten=NaN*ones(100,4); % evtl. initialisieren
while ~(feof(fid))
    eingabe=fgetl(fid);
    if strfind(eingabe,'$')
        continue;
    elseif strfind(eingabe,'/KONTUR')
        lese=1;
        continue;
    elseif strfind(eingabe,'/ENDE') & lese==1
        break;
    elseif lese==1
        text=textscan(eingabe,'%n %n %n %n');
        daten(zeile,:)=cell2mat(text);
    end
    zeile=zeile+1;
end
fclose(fid);
plot(daten(:,1),daten(:,2),'-x');
axis equal;

Liest ein zwischen \KONTUR und \ENDE ohne Kommentare ($).
 
rowco

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.11.2008, 18:45     Titel:
  Antworten mit Zitat      
Ja super! Du hast gerade mein Wochenende gerettet! Thx a lot!
 
rowco01

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.12.2008, 17:52     Titel:
  Antworten mit Zitat      
N'Abend allerseits!

es hat sich doch noch eine Rückfrage ergeben:
Ich versuch gerade das komplette Textfile in eine Textmatrix reinzustopfen:

fid=fopen('kreis.txt');
a=1;
while ~(feof(fid))
eingabe=fgetl(fid);
matrix(a,:)= str2mat(eingabe)
a=a+1;
end
fclose(fid);

Abbrechen tut er nachdem die zweiten Zeile erfolgreich gelesen wurde:

??? Subscripted assignment dimension mismatch.

Error in ==> Untitled1 at 9
matrix(a,:)= str2mat(eingabe)

Ok, das Problem ist lokalisiert, aber WTF??? Könnte mir da vielleicht noch mal jemand auf die Sprünge helfen?
 
rowco

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.12.2008, 18:53     Titel:
  Antworten mit Zitat      
Sorry, hatte die Tags vergessen...´

N'Abend allerseits!

es hat sich doch noch eine Rückfrage ergeben:
Ich versuch gerade das komplette Textfile in eine Textmatrix reinzustopfen:

Code:
fid=fopen('kreis.txt');
a=1;
while ~(feof(fid))
eingabe=fgetl(fid);
matrix(a,:)= str2mat(eingabe)
a=a+1;
end
fclose(fid);


Abbrechen tut er nachdem die zweiten Zeile erfolgreich gelesen wurde:

Code:
??? Subscripted assignment dimension mismatch.

Error in ==> Untitled1 at 9
matrix(a,:)= str2mat(eingabe)


Ok, das Problem ist lokalisiert, aber WTF??? Könnte mir da vielleicht noch mal jemand auf die Sprünge helfen?
 
rowco

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.12.2008, 12:27     Titel:
  Antworten mit Zitat      
Ok, hab's auf einem anderen Wege hinbekommen. Trotzdem Danke für's zuhören!
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.