Zeilenumbruch aus Dateien entfernen...
Übersicht

![]() |
maximilianBetreff: Zeilenumbruch aus Dateien entfernen... |
![]() Antworten mit Zitat ![]() |
---|---|---|
Moin,
ich habe ein Mega-Problem: Ich designe meine Levels für mein Spiel in einem Text-Editor. Das sieht etwa so aus: Code: [AUSKLAPPEN] 0,0 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ()()()()()()()()()()()()()()()()()()()() /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\ ........................................ ()()()()()()()()()()()()()()()()()()()() /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\ $%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$% ww*xww*xww*xxww*xxxww*xxxwww*xxww*xxxwww ww*xww*xw*xw*xw*xw*xw*xw*xw*xw*xw*xw*xww ww*xww*xw*xw*xw*xw*xw*xw*xw*xw*xw*xw*xww ww*xxxxxw*xw*xw*xxxww*xxxww*xw*xw*xxxwww ww*xww*xw*xw*xw*x*xww*x*xww*xw*xw*x*xwww ww*xww*xw*xw*xw*xw*xw*xw*xw*xw*xw*xw*xww ww*xww*xww*xxww*xw*xw*xw*xww*xxww*xw*xww $%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$%$% ()()()()()()()()()()()()()()()()()()()() /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\ ........................................ ()()()()()()()()()()()()()()()()()()()() /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 1,3 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x. . . . . . . . . . x Code: [AUSKLAPPEN] Dim Element$(40) EntwurfFile = ReadFile(entwurf$) MapFile = WriteFile(map$) Repeat PosX = ReadInt(EntwurfFile) PosY = ReadInt(EntwurfFile) WriteShort MapFile, PosX WriteShort MapFile, PosY For y = 1 To 28 For x = 1 To 40 Element$(x) = ReadByte(EntwurfFile) WriteString MapFile, Chr$((Element$(x)) Next Next Until Eof(EntwurfFile) CloseFile MapFile CloseFile EntwurfFile WaitKey() End Das Programm sah schonmal besser aus, aber durch die ganze Verzweiflung habe ich das jetzt so krum gecodet, das dieser Ansatz wohl nur noch scwer ins reine zu bringen ist. Ich hoffe jemand kann mir helfen. Grüße, LordEverything[/code] |
||
Edlothiol |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
1. ReadInt liest keine Zahl als Text, sondern binär. Dafür müsstest du ReadLine benutzen und das aufteilen.
2. Read/WriteString schreiben nicht nur die eigentlichen Strings, sondern vorher noch einen (binären) Integer, der die Länge des Strings angibt, in die Datei. Zum entfernen der Zeilenumbrüche: Code: [AUSKLAPPEN] while not eof(file)
; Linie ohne Zeilenumbruch lesen s$ = readline(file) ; Linie ohne Zeilen umbruch und ohne Stringlänge schreiben for i = 1 to len(s) writebyte(zielfile,asc(mid(s,i,1))) next wend So in etwa. Bei dir kennst du natürlich die Anzahl der Zeichen etc. |
||
![]() |
bruZard |
![]() Antworten mit Zitat ![]() |
---|---|---|
Nicht so kompliziert... Code: [AUSKLAPPEN] in$=Trim(ReadLine(stream)) ... entfernt den Zeilenumbruch ebenso ![]() |
||
PIV 2,4GHz - 1GB DDR 333 - ATI Radeon9600 - WinXP - DX9.0c - BMax 1.14 - B3D 1.91 - 1280x1024x32
User posted image |
![]() |
TheShadowModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
level in ascii-datei zu speichern ist keine so gute idee - macht nur bei pacman - im besten fall noch bei breakout sinn (da wird es aber schon schwierig) | ||
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2 |
![]() |
maximilian |
![]() Antworten mit Zitat ![]() |
---|---|---|
Super! Danke!!!
Grüße, LordChaos |
||
![]() |
TheShadowModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
bitte^_^ | ||
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2 |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group