|
2.11.7 Import und Export von Dateien
Import und Export von Listen und Tabellen mit Daten
So wird eine Liste mit Daten in die Datei out1.dat exportiert.
In[1]:= Export["out1.dat", {6.7, 8.2, -5.3}, "List"]
Out[1]= 
Hier ist der Inhalt der Datei.
In[2]:= !!out1.dat
6.7
8.2
-5.3
So wird der Inhalt zurück in Mathematica importiert.
In[3]:= Import["out1.dat", "List"]
Out[3]= 
Will man die Daten nur in Mathematica verwenden, dann speichert man sie in einer Datei am besten als vollständigen Mathematica-Ausdruck, wobei dann die gesamte Struktur erhalten bleibt; dies wird im Abschnitt 2.11.1 beschrieben. Will man jedoch Daten mit anderen Programmen austauschen, ist es häufig einfacher, wenn die Daten in einem einfachen Listen- oder Tabellenformat vorliegen.
So wird ein zweidimensionales Array mit Daten exportiert.
In[4]:= Export["out2.dat", {{5.6 10^12, 7.2 10^12}, {3, 5}}, "Table"]
Out[4]= 
Zahlen werden, falls erforderlich, in C- oder Fortran-ähnlicher „E"-Schreibweise geschrieben.
In[5]:= !!out2.dat
5.6e12 7.2e12
3 5
So wird das Array zurück in Mathematica importiert.
In[6]:= Import["out2.dat", "Table"]
Out[6]= 
Der Inhalt einer Datei, in der jede Zeile aus einer einzigen Zahl besteht, kann mit Import["datei","List"] als Zahlenliste importiert werden. Besteht jede Zeile aus einer Folge von Zahlen, die durch Tabulatoren oder Leerzeichen getrennt sind, dann wird Import["datei", "Table"] eine Liste mit Listen von Zahlen ergeben. Enthält die Datei Dinge, die keine Zahlen sind, dann werden diese als Mathematica-Zeichenketten zurückgegeben.
So wird eine Mischung textartiger und numerischer Daten exportiert.
In[7]:= Export["out3.dat", {{"erste", 3.4}, {"zweite", 7.8}}]
Out[7]= 
Hier sind die exportierten Daten.
In[8]:= !!out3.dat
erste 3.4
zweite 7.8
So werden die Daten zurück in Mathematica importiert.
In[9]:= Import["out3.dat", "Table"]
Out[9]= 
Mit InputForm sind die Zeichenketten explizit zu sehen.
In[10]:= InputForm[%]
Out[10]//InputForm= {{"erste", 3.4}, {"zweite", 7.8}}
Import von Dateien in verschiedenen Formaten
So wird eine Datei mit zwei Textzeilen erzeugt.
In[11]:= Export["out4.dat", {"Die erste Zeile.", "Die zweite Zeile."}, "Lines"]
Out[11]= 
Hier ist der Inhalt der Datei.
In[12]:= !!out4.dat
Die erste Zeile.
Die zweite Zeile.
So wird die gesamte Datei als eine Zeichenkette importiert.
In[13]:= Import["out4.dat", "Text"]//InputForm
Out[13]//InputForm= "Die erste Zeile.\nDie zweite Zeile.\n"
So wird die Datei als Liste mit Textzeilen importiert.
In[14]:= Import["out4.dat", "Lines"]//InputForm
Out[14]//InputForm= {"Die erste Zeile.", "Die zweite Zeile."}
So wird die Datei als Liste mit Wörtern, die durch weißen Zwischenraum getrennt sind, importiert.
In[15]:= Import["out4.dat", "Words"]//InputForm
Out[15]//InputForm= {"Die", "erste", "Zeile.", "Die", "zweite", "Zeile."}
|