[NEU] IniRead_include

13/01/2009 - 15:22 von Hermann Hippen | Report spam
Moin Moin :-),

So, eigentlich wird dies wirklich nur in noch zu erstellenden Scripten
benötigt, also von den Bastlern hier, aber falls schon jemand Scripte
baut, habe ich diese Funktion auch mal aus meinem BM genommen und eine
Include daraus gemacht, der Vollstàndigkeit halber, falls es jeamnd
brauchen kann.

Aufruf zum Beispiel mit


WrapLine := StrToInt(IniRead('settings.ini','General','WrapAt'));
(Das Ergebnis liefert immer ein String, also muss hier umgewandelt
werden)
Ergebnis wàre bei mir dann: 73

oder

DialogPfad:= IniRead('settings.ini','Programmpfad','Stammpfad');
( hier kann es dann so bleiben )
und hier wàren mein Ergebnis: N:\Programme\40tude Dialog\

Also, wer es braucht:

Code
IniRead_include
-
// FileName: IniRead_Include - Stand 13.01.2009
//
// IniFileName = Name der Datei z.B. settings.ini
// IniTitel = Überschrift der Rubrik in der IniDatei
// IniName = Name des Eintrags in der Ini
//
// Wird IniName gefunden wird der Inhalt zürückgegeben ansonsten ''.
//-
Function IniRead(IniFileName,IniTitel,IniName:String):String;
Var
IniFile : TextFile;
Search : String;
FoundRubrik ,FoundName: Boolean;
Begin
Result := '';
FoundName := False;
FoundRubrik:= False;
IniTitel := '[' + IniTitel + ']' // IniTitel auf Standard Rubrik Format trimmen
AssignFile(IniFile,IniFileName); Reset(IniFile); // Gewünschte Datei öffnen
// Suche Rubrik
Repeat
TextReadLn(IniFile,Search);
If IniTitel = Trim(Search) Then FoundRubrik := True; // Rubrik gefunden, dann weiter bei
// Namen suchen
Until Eof(IniFile) or FoundRubrik;

If FoundRubrik Then // Wenn Rubrik gefunden, dann...
Begin
Repeat
TextReadLn(IniFile,Search); // suchen wir innerhalb der Rubrik nach dem
// nach dem gewünschten Namen.
If Pos(IniName,Search) > 0 Then FoundName := True; // gefunden, dann weiter zur
// Ergebnisaufbereitung
Until Eof(IniFile) or // Stop wenn Ende der Datei erreicht ist oder
FoundName or // das Gewünschte gefunden wurde oder
(Pos('[',Search) > 0); // eine neue Rubrik beginnt

If FoundName Then // Name wurde gefunden - ResultString mit dem Ergebnis
Begin // wird aufbereitet...
Search := Trim( Copy( Search, Pos('=',Search) + 1, Length(Search) ));
If Pos('"',Search) > 0 Then Search := StringReplace(Search,'"','',[rfReplaceAll]);
Result := Search; // fertiges Ergebnis im Rückgabestring
End;
End;
CloseFile(IniFile); // Datei wieder schliessen und fertig.
End;
-



Cu,
Hermann Hippen.
ž' š°º€ø?žžžžž?ø€º°š 'ž
ø€º° '<http://4ds.siteboard.eu>' °º€ø
'ž '40tude-Dialog Scriptwerkstatt' ž'
ø€º°' ž ž ø€º°ššššššš°º€øšž ž '°º€ø
 

Lesen sie die antworten

#1 Hermann Hippen
13/01/2009 - 15:28 | Warnen spam
Hermann »Ingrid« Hippen schrieb in d.c.s.4-d:

[IniRead_include]

@Raady: Das kannst du vielleicht unter 'Sonstiges' oder
'Programmiertools' abheften :-) Nur nicht in L2 oder L1, weil es nicht
zu den Userscripten gehört. Und was L2 betrifft, da ist es sowieso im BM
eingebaut.

Cu,
Hermann Hippen.
ž' š°º€ø?žžžžž?ø€º°š 'ž
ø€º° '<http://4ds.siteboard.eu>' °º€ø
'ž '40tude-Dialog Scriptwerkstatt' ž'
ø€º°' ž ž ø€º°ššššššš°º€øšž ž '°º€ø

Ähnliche fragen