|
> From owner-dmug@XXXXXXX.ch Tue Apr 22 12:10 MET 1997 > Date: Tue, 22 Apr 1997 11:24:05 +0200 (MES) > From: Marko Bertmer <markber@XXXXXXX.de> > To: Mathematica-Mailing-Liste <dmug@XXXXXXX.ch> > Subject: externes Speichern von Listen > Mime-Version: 1.0 > Content-Transfer-Encoding: QUOTED-PRINTABLE > > Hallo! > > Kennt jemand von Euch eine einfache Methode, mit der man Listen aus > Datenpunkten in vernünftiger, d.h. tabellarischer Form von x-y-Wertepaaren, > abspeichern kann, sodaß sie von anderen Programmen einfach eingelesen werden > können? > Wenn man einfach mit >> speichert, erhält man in der Ausgabedatei zusätzlich > die geschweiften Klammern für die Ausgabe von Listen. Trotz mehrerer > Versuche auch über Umwege habe ich noch keine geeignete Lösung gefunden. > > Vielleicht hatte jemand von Euch schon einmal dieses Problem, für eine > Antwort bedanke ich mich im Voraus. > > Marko Bertmer > Institut für Physikalische Chemie > Schloßplatz 4/7 > WWU Münster > Germany > > Nach einer veroeffentlichten Idee von Nancy Blachmann kann man folgendes Paket anwenden : BeginPackage["listeRaus`"]; listeRaus::usage="listeRaus[filename,daten] schreibt eine zweidimensionale\n Matrix in ein File mit Namen filename und entfernt dabei die geschweiften\n Klammern." Begin["listeRaus`Private`"]; listeRaus[filename_String,data_List] := Module[{ file = OpenWrite[filename] }, Map[ ( WriteString[file, First[#]]; Map[ WriteString[file,"\t",#]&, Rest[#] ]; WriteString[file,"\n"] )&, data ]; Close[file] ]; End[]; EndPackage[]; (*Die aeussere Funktion trennt die Matrix in f[zeile] auf.f besteht zunaechst aus dem Schreibbefehl "schreibe erstes Element". Dann kommt die innere Funktion g, die aus "Schreiben eines Tabulators" und "Schreiben" ange- wandt auf den Rest der Zeile, also zweites bis letztes Element der Zeile besteht. Nach dem Schreiben der Zeile wird noch ein "Neue-Zeile" geschrieben*) Mit freundlichen Gruessen Hans-Joachim Spitzer +--------------------------------------------------------------+ |Hans-Joachim Spitzer : phone: (+49)(30) 2093 2363| |Humboldt-University zu Berlin : fax: (+49)(30) 2093 2959| |Rechenzentrum : office: | |Unter den Linden 6, 10099 Berlin : room: 1054e | +--------------------------------------------------------------+ |