Seite 1 von 1

Doppelte Pref Auslesung

Verfasst: 04.08.2005 13:07
von Green Snake
hi

habe mal wieder ne frage, die sich um das auslesen von pref dreht....
habe folgende pref datei erstellt, hier die ersten 20 zeilen

Code: Alles auswählen


#1 = 239,231
#2 = 245,239
#3 = 246,242
#4 = 248,248
#5 = 248,249
#6 = 246,258
#7 = 244,260
#8 = 242,266
#9 = 239,269
#10 = 232,290
#11 = 229,298
#12 = 229,309
#13 = 229,327
#14 = 229,334
#15 = 229,346
#16 = 232,367
#17 = 241,387
#18 = 243,401
#19 = 249,410
#20 = 252,421


so:

#+zahl stellt das keyword dar.
hinter dem = stehen eigentlich 2 zahlen, die 1 gibt die X position, und die 2 die Y position von einem objekt an (zb bild etc)

mein problem, wie lese ich das am besten, am einfachsten, und am schnellsten aus?

geht das nur, in dem ich bis zum komma auslese, und dann vom komma bis zum ende?
gibts auch ncoh was besseres?


thx

Verfasst: 04.08.2005 13:22
von AndyX
StringField() hilft ;)

Verfasst: 04.08.2005 13:25
von Green Snake
jop, habs auch gerade gesehen.
tro^tzdem danke :wink:

habe aber in der zeit selbst eine lösung gefunden, die mein problem behebt.
habe jetzt folgender pref inhalt

Code: Alles auswählen

X1 = 569
Y1 = 396
X2 = 573
Y2 = 390
X3 = 579
Y3 = 367
X4 = 560
Y4 = 328
X5 = 508
Y5 = 263
X6 = 505
Y6 = 256
X7 = 502
Y7 = 247
X8 = 502
Y8 = 241
X9 = 502
Y9 = 230
X10 = 508
Y10 = 228

so kann ichs ganz easy auslesen, leider wird dadurch die datei ein wenig grösser? oder?

naja, ich machs mal so.
nochmals danke an andyx

*kleine notiz für mich*

*endlichmalfilebefehleanschau :wink: *

Verfasst: 04.08.2005 13:27
von DarkDragon
Green Snake hat geschrieben:*endlichmalfilebefehleanschau :wink: *
String Befehle!! Schau dir die an, dann weißt du wie das geht.

Verfasst: 04.08.2005 13:39
von AndyX
Du kannst doch ReadPreferenceString stringfielden... :?

Verfasst: 04.08.2005 13:43
von Green Snake
jop, kann ich, geht auch, aber ich nehme es trotzdem in "meiner" variante.
der übersicht zu liebe :lol:
*wobei es anders auch nicht viel schlechter zu übersehen ist :lol: *

Verfasst: 04.08.2005 13:44
von AndyX
Das mit X1 = Y1= usw. ist doch umständlich nimm lieber meine Lösung :allright: :mrgreen:

Verfasst: 04.08.2005 13:56
von bobobo
ich würds variabler gestalten und fast schon garnichtmehr als preference einlesen sondern "normal" und dann ner Liste zuweisen

Code: Alles auswählen

NewList koordinaten.IDXPoint()
Debug "Datei öffnen und lesen"

OpenFile(0,"D:\test.ini")
While Eof(0)=0
  tmp$=ReadString()
  ; Debug tmp$
  If tmp$="[irgendwas]" ;Das muss man halt wissen
    lesen=1
    ;Beep(440,500)
  EndIf
  If tmp$="[irgendwasanderes]" ;Das auch
    lesen=0
    ;Beep(220,500)
  EndIf
  If lesen=1 And Left(tmp$,1)<>"["
    tmp$=RemoveString(tmp$," ")
    ;Debug tmp$
    
    tmp1$=StringField(tmp$,1,"=")
    tmp2$=StringField(tmp$,2,"=")
    tmp3$=StringField(tmp2$,1,",")
    tmp4$=StringField(tmp2$,2,",")
    ;Debug "Name :"+ tmp1$
    ;Debug "Wert1 :"+tmp3$
    ;Debug "Wert2 :"+tmp4$
    AddElement(koordinaten())
    koordinaten()\idx=tmp1$
    koordinaten()\x=Val(tmp3$)
    koordinaten()\y=Val(tmp4$)
  EndIf
Wend
Debug "lesen beendet"
;Auswertung
ResetList (koordinaten())
While NextElement(koordinaten())
  Debug "FÜR "+koordinaten()\idx+" sind die Koordinaten "+Str(koordinaten()\x)+" : "+Str(koordinaten()\y)
Wend
Du bist dann frei in der Anzahl der einzugebenden Punkte

Verfasst: 04.08.2005 14:21
von Green Snake
ok, danke dir bobobo

werde deine (intressante) lösung mal genauer anschauen :wink: