morbias_one
Forum-Anfänger
Beiträge: 15
Anmeldedatum: 13.12.08
Wohnort: ---
Version: 5.3.1
Verfasst am : 28.12.2008, 14:42
Titel : Datei laden
Hallo Forum ,
wir müssen für ein Projekt eine Datenbank in ein Programm einlesen. Meine Frage ist, kann ich mit dem "load-Befehl" eine *.mat Datei gleich zum Anfang "in das Programm" laden, sodass ich mir z.B. die Datensätze anzeigen lassen kann?
Liebe Grüße
Julia
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am : 28.12.2008, 18:05
Titel :
morbias_one
Themenstarter
Forum-Anfänger
Beiträge: 15
Anmeldedatum: 13.12.08
Wohnort: ---
Version: 5.3.1
Verfasst am : 28.12.2008, 19:13
Titel :
In was für ein Programm wäre doch eigentlich egal, oder? Ist es denn prinzipiell möglich sowas zu machen?
Zum Programm: Es soll eine Datei (diese *.mat Datei) geladen werden wo Schülerdaten enthalten sind. Diese sollen dann sortiert ausfegeben werden.
Liebe Grüße
Julia
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am : 28.12.2008, 19:15
Titel :
Ja, wenn Du das Programm selber schreibst ist das natürlich möglich.
morbias_one
Themenstarter
Forum-Anfänger
Beiträge: 15
Anmeldedatum: 13.12.08
Wohnort: ---
Version: 5.3.1
Verfasst am : 28.12.2008, 19:18
Titel :
Ja, und wie ist es möglich? Einfach mit dem "load"-Befehl? Wenn ich es so mache, dann lädt er zwar die Datenbank aber ich kann die Datensätze nicht ausgeben. Die Tabelle bleibt dann leider leer
Liebe Grüße
Julia
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am : 28.12.2008, 21:02
Titel :
Ja, mit
. Der Link führt zur Hilfe zum Befehl.
Welche Datenbank, welche Datensätze, welche Tabelle?
morbias_one
Themenstarter
Forum-Anfänger
Beiträge: 15
Anmeldedatum: 13.12.08
Wohnort: ---
Version: 5.3.1
Verfasst am : 29.12.2008, 20:08
Titel :
Hallo,
ich habe ja oben schon geschrieben, dass ich eine *.mat-Datei mit Schülerdaten habe. Darin sind die "Schülernummer", der Name, und das Land des Schülers gespeichert. Ich muss nun diese Datei bei Programmstart laden. Mit einem Menüpunkt soll ich dann diese Datei ausgeben können (tabellarisch).
Erfolgt die Ausgabe der Werte dann mit "fscanf" oder mit "fprintf"?
Liebe Grüße
Julia
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am : 29.12.2008, 20:53
Titel :
Ausgeben eher mit
, in eine Datei schreiben mit
.
morbias_one
Themenstarter
Forum-Anfänger
Beiträge: 15
Anmeldedatum: 13.12.08
Wohnort: ---
Version: 5.3.1
Verfasst am : 29.12.2008, 21:40
Titel :
Hm, ok. Ich komm da nicht weiter...
Also das hier ist diese Datei. Wie kann ich nun die Sachen, die in dieser Datei stehen ausgeben?
Mit
bekomme ich heraus, das
eine Variable ist, richtig?
Mit
müsste er mir doch etwas ausgeben, oder?
Bin schon leicht verzweifelt
Liebe Grüße
Julia[/code][/url]
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am : 30.12.2008, 09:59
Titel :
Ja, Student ist die Variable.
Nein, Dein Befehl gibt nichts aus, weil Du student statt Student schreibst und das kein gültiger format string ist.
Eine einfache Tabelle könntest Du so erhalten:
Code:
load daten
zeilen=size ( Student,1 ) ;
disp ( repmat ( '- ',1 ,43 ) ) ;
str=sprintf ( '|%-15s|%-25s| ','Name ','Land ') ;
disp ( str) ;
disp ( [ '| ' repmat ( '- ',1 ,41 ) '| '] ) ;
for k=1 :zeilen
text =textscan ( Student( k,:) ,'%s %s ','Delimiter ',', ') ;
str=sprintf ( '|%-15s|%-25s| ',strtrim ( char ( text { 1 } ) ) ,strtrim ( char ( text { 2 } ) ) ) ;
disp ( str) ;
end
disp ( repmat ( '- ',1 ,43 ) ) ;
Zum besseren Verständnis kannst Du Dir mal die Hilfe zu den einzelnen Befehlen durchlesen.
morbias_one
Themenstarter
Forum-Anfänger
Beiträge: 15
Anmeldedatum: 13.12.08
Wohnort: ---
Version: 5.3.1
Verfasst am : 30.12.2008, 23:20
Titel :
Hallo und Danke für deine Hilfe.
Ich habe deinen Code gerade mal probiert. Er sagt immer
und ich bekomme das nicht weg. Er kennt da ja anscheinend die Sache mit dem "textscan" nicht.
Umd nun...?
Liebe Grüße
Julia
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am : 31.12.2008, 10:20
Titel :
Vermutlich benutzt Du eine ältere Matlab-Version als ich.
Klappt folgendes?
Code:
load daten
zeilen=size ( Student,1 ) ;
disp ( repmat ( '- ',1 ,43 ) ) ;
str=sprintf ( '|%-15s|%-25s| ','Name ','Land ') ;
disp ( str) ;
disp ( [ '| ' repmat ( '- ',1 ,41 ) '| '] ) ;
for k=1 :zeilen
[ name,land] =strread ( Student( k,:) ,'%s %s ','delimiter ',', ') ;
str=sprintf ( '|%-15s|%-25s| ',strtrim ( char ( name) ) ,strtrim ( char ( land) ) ) ;
disp ( str) ;
end
disp ( repmat ( '- ',1 ,43 ) ) ;
morbias_one
Themenstarter
Forum-Anfänger
Beiträge: 15
Anmeldedatum: 13.12.08
Wohnort: ---
Version: 5.3.1
Verfasst am : 01.01.2009, 18:51
Titel :
Hallo,
jetzt zeigt er bei mir
Funktioniert also auch nicht
Liebe Grüße
Julia
morbias_one
Themenstarter
Forum-Anfänger
Beiträge: 15
Anmeldedatum: 13.12.08
Wohnort: ---
Version: 5.3.1
Verfasst am : 01.01.2009, 20:26
Titel :
So, die Ausgabe Funktioniert bei mir jetzt
Jetzt kommt aber gleich die nächste Sache: es soll den Namen noch eine 5-stellige, fortlaufende Matrikelnummer hinzugefügt werden. I have no idea
Liebe Grüße
Julia
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am : 02.01.2009, 16:13
Titel :
Trag doch mal in Deinem Forum-Profil die von Dir benutzte Matlab-Version ein, dann kann man gezielter Vorschläge machen.
Ich würde das so aber nicht als Tabelle durchgehen lassen...
Klappt es so bei Dir?
Code:
load daten
zeilen=size ( Student,1 ) ;
str=sprintf ( '| %-12s| %-15s | %-25s | ','Matr.-Nr. ','Name ','Land ') ;
padding=length ( str) ;
disp ( repmat ( '- ',1 ,padding) ) ;
disp ( str) ;
disp ( [ '| ' repmat ( '- ',1 ,padding-2 ) '| '] ) ;
matr=10000 ;
for k=1 :zeilen
%[ name,land] =strread ( Student( k,:) ,'%s %s ','delimiter ',', ') ;
s=Student( k,:) ;
sep=strfind ( s,', ') ;
name=s( 1 :sep-1 ) ;
land=s( sep+1 :end ) ;
str=sprintf ( '| %-12d| %-15s | %-25s | ',matr,strtrim ( char ( name) ) ,strtrim ( char ( land) ) ) ;
disp ( str) ;
matr=matr+1 ;
end
disp ( repmat ( '- ',1 ,padding) ) ;
Für den Fall, dass es wieder nicht klappt, hänge ich die Ausgabe mal als Text-Datei an.
Je nach dem was hier gemacht werden soll würde ich zum Speichern der Daten etwas anderes nehmen, als ein array of chars...
Beschreibung:
Download
Dateiname:
ausgabe.txt
Dateigröße:
1.47 KB
Heruntergeladen:
949 mal
Gehe zu Seite 1 , 2 Weiter
Einstellungen und Berechtigungen
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
| 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.