www.mikrocontroller.net

Forum: PC-Programmierung Problem mit Matlab


Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit der Funktion textread lese ich eine Textdatei ein.
global path_name                                           
global file_name                                               

[file_name, path_name] = uigetfile({'*.txt'});
pfad = strcat(path_name,file_name);       
[m1 m2]=textread(pfad, '%s%s%*[^\n]','delimiter',';');

le2=length(m2);
m2_new = m2(6:le2);

-m1 das ein Spaltenvektor ist, beinhaltet das Datum sowie die Zeit
 Beispiel: in m1(1) steht dies hier drin: '01.08.2008 11:56:09'
-m2 das ein Spaltenvektor ist, beinhaltet die Temperatur
 Beispiel: in m2(1) steht dies hier drin: '23.4'

Das Problem hier ist, das ich die Hochkommas nicht weg bekomme.
In den Spaltenvektoren sollen die Informationen ohne Hochkomma enthalten 
sein. Mit diesen Hochkommas kann ich keine weitere Verarbeitung 
vornehmen.

Kann mir dazu jemand helfen?

Autor: Detlef _a (detlef_a)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Hochkommas so rausnehmen:
s='aa''aa'
ind=find(s=='''')
s(ind)=' '

Da kommt raus aa aa

Cheers
Detlef

Autor: hans (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo gast,

matlab kennt zwei verschiedene formen von stringvariablen (cell und 
char). die hochkommas weisen darauf hin, dass es sich um cell-variablen 
handelt, diese können in vektoren angeordnet werden, unabhängig wie lang 
die einzelnen strings sind. bei einem indexierten zugriff bekommt man 
den kompletten string zurück ( m1(1) ... '01.08.2008 11:56:09' ). der 
direkte zugriff auf einzelne buchstaben des strings ist nur bei 
char-variablen möglich. der wechsel von cell nach char geht 
folgendermaßen:
 res1 = char(m1(1));
der wechsel in der anderen richtung geht über die geschweiften klammern:
 m1(1) = {res1};

viel spass noch mit matlab

Autor: Klaus R. (klaus2)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
...für sowas gibt es auch ein deutsches MatLab Forum: www.goMatlab.de

Da posten auch Mitarbeiter von TMW.

Gruß, Klaus.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.