Delphi-PRAXiS
Seite 2 von 4     12 34      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Wie Erkenne ich den Unterschied zwischen Unix und Win32 file (https://www.delphipraxis.net/83094-wie-erkenne-ich-den-unterschied-zwischen-unix-und-win32-file.html)

Corpsman 27. Dez 2006 18:04

Re: Wie Erkenne ich den Unterschied zwischen Unix und Win32
 
Delphi-Quellcode:
Procedure Readini;
Var
  f: Textfile;
  w, h, s: String;
  b: Boolean;
  l: Tstringlist;
Begin
  s := apppath + 'user.cfg'; //copy(Texturepath, 1, length(Texturepath) - 9) + 'User.cfg';
  b := True;
  If FileExists(s) Then Begin
    // Konvert from Unix to Win32 -- Begin
    l := Tstringlist.create;
    l.loadfromfile(s);
    sleep(10);
    l.savetofile(s);
    l.free;
    sleep(10);
    // Konvert from Unix to Win32 -- End
    assignfile(f, s);
    reset(f);
    ..
Wie ihr Seht prüfe ich nicht.

Die Files sind so klein, da spare ich mir das ;)

thkerkmann 27. Dez 2006 18:28

Re: Wie Erkenne ich den Unterschied zwischen Unix und Win32
 
Hi,

und warum liest Du deine Informationen dann nicht direkt aus der Stringliste ?

Du musst die Datei dann weder neu speichern noch erneut lesen ?

Gruss

Corpsman 27. Dez 2006 20:22

Re: Wie Erkenne ich den Unterschied zwischen Unix und Win32
 
Hast Recht,

Das würde gehn.

Werde es wohl noch umbaun. Wollte das es vorerst wieder geht.

Schliesßlich will ich ja das meine Fans das Balanced spielen können und nicht auf Bugfixes warten müssen ;).

Christian Seehase 27. Dez 2006 21:03

Re: Wie Erkenne ich den Unterschied zwischen Unix und Win32
 
Moin Corpsman,

wozu soll denn das Sleep gut sein?
LoadFromFile kehrt erst zurück, nachdem die Daten vollständig eingelesen wurden.

ascotlx 28. Dez 2006 09:00

Re: Wie Erkenne ich den Unterschied zwischen Unix und Win32
 
(und was ist mit Teeeeeeee??? :shock: )

...in diesem Sinne nochmal die Frage aus dem Titel ???
Wie kann ich denn die Textdateien im DOS-, und UNIX-Format unterscheiden ??
Meine Tests mit #13#10 Abfragen funktionieren tatsächlich nicht. Klar, die Umwandlung
würde ja reichen, aber so rein aus Interesse würde ich Lösung im Sinne der Frage
gut finden.

Gruss

ascotlx

Reinhard Kern 28. Dez 2006 09:22

Re: Wie Erkenne ich den Unterschied zwischen Unix und Win32
 
Zitat:

Zitat von ascotlx
(und was ist mit Teeeeeeee??? :shock: )

...in diesem Sinne nochmal die Frage aus dem Titel ???
Wie kann ich denn die Textdateien im DOS-, und UNIX-Format unterscheiden ??
Meine Tests mit #13#10 Abfragen funktionieren tatsächlich nicht. Klar, die Umwandlung
würde ja reichen, aber so rein aus Interesse würde ich Lösung im Sinne der Frage
gut finden.

Gruss

ascotlx

Hallo,

du must doch nur die Datei als file of char solange zeichenweise lesen, bis ein CR oder LF auftaucht: CR -> Windows, LF -> Unix. Es gibt zwar theoretische Ausnahmen wie z.B. herrenlose LFs in Windowstexten, aber für übliche Textdateien ist das 99.9 % sicher.

Ich habe mich meistens eher nicht für die Herkunft interessiert, sondern jedes Auftreten von CR, LF, CR-LF und LF-CR durch CR-LF ersetzt. Alle 4 Kombinationen sind in der Geschichte der IT schon mal irgendwo verwendet worden.

Übrigens waren Utilites wie Unix2Dos und Dos2Unix schon weit verbreitet, bevor es überhaupt Windows gab, und manche Systeme haben sie beim Kopieren automatisch aufgerufen.

Gruss Reinhard

ascotlx 28. Dez 2006 09:32

Re: Wie Erkenne ich den Unterschied zwischen Unix und Win32
 
Hallo Reinhard,

besten Dank für Deine Antwort, ich werd' es ausprobieren (dauert wahrscheinlich etwas, da ich noch nicht so lange unter Windows programmiere).
Da ich aus der UNIX-Ecke komme sind mir die genannten Tools bekannt und genau aus diesem Grund interessiere ich mich auch für die Antwort für die, bzw. eine Frage.
Workarounds gibt es wie Sand am Meer und manchmal hat man ein Workaround ohne es zu wissen (schau mich Unwissenden an) :zwinker: (sollte den Satz als Signatur wählen :gruebel: ).

Gruss
ascotlx

Corpsman 28. Dez 2006 11:56

Re: Wie Erkenne ich den Unterschied zwischen Unix und Win32
 
@ Christian Seehase

Da ich beim Laden einer Datei in der Regel recht viel zeit habe mache ich das immer rein. 10 mS sind für uns Menschen nicht Merkbar , aber der Rechner macht doch sehr viel in der Zeit.

Christian Seehase 28. Dez 2006 14:19

Re: Wie Erkenne ich den Unterschied zwischen Unix und Win32
 
Moin Corpsman,

wenn Du das nur machst, um gezielt Rechenzeit an andere Threads abzugeben, reicht auch Sleep(0), nur warum Du das machst entzieht sich meiner Vorstellung ;-)

Corpsman 28. Dez 2006 14:56

Re: Wie Erkenne ich den Unterschied zwischen Unix und Win32
 
Ist es dir ein Trost wenn sich das meiner auch entzieht ?


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:50 Uhr.
Seite 2 von 4     12 34      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz