Aus DGM Textdatei ein ASCII erstellen

Servus Community,

ich habe ein DGM geordert und nun noch kein fertiges DGM erhalten, sondern ein Textfile, aufgebaut aus Rechtswerten, Hochwerten, und der Geländehöhe über NN.

Ich wollte es jetzt in ein ASCII umschreiben, ums mit ASCII to Raster bei den Conversion Tools zu importieren. Bisher ist es allerdings misslungen.

Ich habe mir schon folgenden Header angelegt: (nach # folgen Kommentare)

ncols 20000 # insg. waren es 40000 Werte, hab ich halbiert
nrows 20000
xllcorner 3637500 #kleinster Rechtswert
yllcorner 5797500 # kleinster Hochwert
cellsize 25
no_data_value -9999

100.088 99.474 98.936 98.386 97.812 97.283 96.803 96.335 95.913 95.604 95.363 95.139 94.898
94.605 94.243 93.833 93.406 92.978 92.577 92.252 91.975 91.713 91.448 91.183 90.936 90.718 ...usw

Ich weiß dabei nicht, wie man die Höhenwerte trennen muss, daran könnte es vielleicht liegen.

Bin für Rat dankbar.
Grüße
Scholtes
Bei mir haben die txt-Dateien folgendes Format.

X Y Z
15.1 12.6 7
12.4 11.4 9
18.3 19.7 12
5.1 12.6 7
16.4 21.4 9
Falls das DGM als XYZ-Textdatei vorliegt (entsprechend Hannes' Beispiel), kannst du es einfach über 'Add XY Data...' aus dem Werzeug-Menü als Eventlayer hinzufügen (sieht dann wie ein Punktlayer aus) und bei Bedarf in ein Grid umwandeln.

--(ähnliche Funktion: 'Make XY-Event Layer' aus der ArcToolbox)

Falls das DGM als Ascii-Raster vorliegt, ist dein Beispiel richtig formatiert, die Trennung erfolgt normalerweise tatsächlich mit Leerzeichen. Die Werte müssen dann aber auch wirklich in 20000 Reihen und 20000 Spalten vorliegen. Außerdem müssen natürlich die Koordinaten jedes Wertes stimmen.

Falls du das XYZ wirklich in ein ASCII umgewandelt hast: Das ist nicht nur ein unglaublich umständlicher Weg sondern es ist normalerweise auch nicht besonders einfach, die Werte korrekt zuzuweisen.
Lösung gefunden---

Nach langem Hin und her hat eine Kollegin die Lösung gebracht. Hier der Lösungsvorschlag in seinen Einzelschritten:
0. Die Originaldaten in einen separaten Ordner kopieren, möglichst unter dem C:\ Verzeichnis
0.1 nach der Ländereinstellung sehen, wer ein englischsprachiges GIS benutzt ändert die Spracheinstellungen unter Systemsteuerung --> Regions- und Spracheinstellungen auf "Englisch Großbritannien"
1. die Endeung der Datei ändern auf *.txt
2. im Editor öffnen (ich verwende hier TextPad)
3. einen Header Schreiben: X,Y,Z
4. die zwei Leerzeichen, die als Spaltentrenner dienen füllen mit: .,
4.1 Der Punkt markiert den Abschluss des Wertes, das Komma separiert die Spalten.
5. Speichern
6. im Gis unter "Add Data" die gerade gespeichert *.txt Datei einladen.
7. auf Export klicken und als D-Base File exportieren.
8. über Conversion Tools das D Base File mittels Point to Raster konvertieren
8.1 Das Value Field mit Z ausfüllen
8.2 Cellsize ändern je nachdem welche Auflösung man beim DGM bestellt hat.

Als Ausgabe erhält man das DGM, ich hoffe das Verfahren ist übertragbar.

Gruß Scholtes
Der Teil 6 bis 8.2 wäre mir zu umständlich, aber wenn's funktioniert...
ja, es geht aber auch nur bei kleinen files, ich hab hier Ausgangstextdateien von größer 2 GB, er geht grad völlig in die Knie.

Weiß jemand einen Editor für so große Dateien, ich muss die ja erstmal splitten, sonst kann ich keine Suchen/Ersetzen Operationen darauf tätigen
In Access laden und dort suchen und ersetzen lassen.
Gruß
Frank
wird gleich probiert
Mir ist immer noch nicht klar, warum ihr das nicht als XY-Event ladet. Das erspart die ganze Ersetzerei sowie die oben von dir aufgeführten Arbeitsschritte 4 bis 8.
Bei Add XY kann ich, wenn ich das Textfile lade keine X bzw. Y Spalte wählen, ich kanns also gar nicht erst ausführen.

Make XY Event Layer geht nicht weil der Datensatz nicht "supported" wird.
Wir benötigen recht oft DGMs, die leider nicht immer einheitlich formatiert sind. Eine Datei, die ich vor ein paar Tagen bekommen aheb, sieht z.B. so aus:

3445000. 5424000. 108.24
3445000. 5424005. 107.93
3445000. 5424010. 108.00
...


Vorne ein Leerzeichen (wird hier nicht dargestellt), zwischen X- und Y-Koordinate ein Leerzeichen und zwischen Y und Z zwei Leerzeichen. Keine Ahnung, ob deine Datei ähnlich aussieht.

Dazu erstelle ich einen Header

X Y Z
3445000. 5424000. 108.24
3445000. 5424005. 107.93
3445000. 5424010. 108.00
...


mit einem Leerzeichen vor dem X und zwischen den folgenden Buchstaben jeweils noch eines. In dem Ordner, in dem diese Datei liegt (die hier beispielhaft "Beispielname.txt" heißen soll) liegt eine weitere Textdatei namens "schema.ini" (falls nicht, kann man sie neu anlegen). Dort schreibe ich folgendes rein:

[Beispielname.txt]
Format=Delimited( )
DecimalSymbol=.


und speichere das. Nun kann ich das ganze per Add XY Data laden und mit Feature to Raster aus dem SA-Menü in ein Grid umwandeln.
Vielen Dank für deinen Tipp, ich probiers am Donnerstag aus.

Gruß
Scholtes
Ja das hat auch funktioniert vielen Dank. Bei den anderen ist die Ausgangsdatei eh zu groß, da hat auch Access kapituliert.
Gute Freeware-Editoren für große Dateien sind

JujuEdit (www.jujusoft.com/software/edit/) oder
CREdit (www.praven3.com/credit).

Wenn Access versagt, kann MATLAB (kostenpflichtig)meist trotzdem weiterhelfen.

Gruß,
gabbaging
Wir benötigen recht oft DGMs, die leider nicht immer einheitlich formatiert sind. Eine Datei, die ich vor ein paar Tagen bekommen aheb, sieht z.B. so aus:

3445000. 5424000. 108.24
3445000. 5424005. 107.93
3445000. 5424010. 108.00
...

Vorne ein Leerzeichen (wird hier nicht dargestellt), zwischen X- und Y-Koordinate ein Leerzeichen und zwischen Y und Z zwei Leerzeichen. Keine Ahnung, ob deine Datei ähnlich aussieht.

Dazu erstelle ich einen Header

X Y Z
3445000. 5424000. 108.24
3445000. 5424005. 107.93
3445000. 5424010. 108.00
...

mit einem Leerzeichen vor dem X und zwischen den folgenden Buchstaben jeweils noch eines. In dem Ordner, in dem diese Datei liegt (die hier beispielhaft "Beispielname.txt" heißen soll) liegt eine weitere Textdatei namens "schema.ini" (falls nicht, kann man sie neu anlegen). Dort schreibe ich folgendes rein:

[Beispielname.txt]
Format=Delimited( )
DecimalSymbol=.

und speichere das. Nun kann ich das ganze per Add XY Data laden und mit Feature to Raster aus dem SA-Menü in ein Grid umwandeln.


Hallo,

ich muss ebenfalls ein DGM erstellen und habe die Daten genau so bekommen wie Du hier beschrieben hast. Sie heißen "2232343.1m" usw. Liege ich richtig, dass ich jetzt "einfach" die Dateiendung auf .txt umänder und in der Datei den Header: " X Y Z" mit Leerzeichen einfüge?!... Habe es versucht und es hat geklappt :-) Soweit sogut. Nun habe ich ein schwarzes Quadrat mit einer Million Punkten. Jetzt komme ich nicht wirklich weiter. Wie muss ich nun weiter verfahren?