Einzelnen Beitrag anzeigen

Benutzerbild von ascotlx
ascotlx

Registriert seit: 8. Mär 2005
Ort: Hamburg
97 Beiträge
 
Delphi 7 Professional
 
#22

Re: Wie Erkenne ich den Unterschied zwischen Unix und Win32

  Alt 28. Dez 2006, 16:41
Moin DGL-Luke,

mach ich da jetzt einen Fehler (welchen auch immer) oder funktioniert das so nicht ??

das Test Programm liefert ein "gefunden" für jedes Ergebnis von POS > 0

Delphi-Quellcode:
unit cuf1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    OpenDialog1: TOpenDialog;
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  Datei : Textfile;

implementation

{$R *.dfm}



function HasDOSLineBreaks(s:string):Boolean;
begin
  Result := Pos(#13#10,s) > 0;
end;

procedure MakeDosLineBreaks(var s:string);
begin
  if not HasDosLineBreaks(s) then
    ShowMessage('gefunden');
end;


procedure filecheck(const AFileName: String);
var fFile: file of char;
    zeile: string;
    Buffer: char;
begin
 AssignFile(Datei, AFileName);
 {$I-}Reset(Datei);{$I+}
 if IOResult=0 then
   begin
     zeile:='';
     while not eof(Datei) do
     begin
       readln(datei,zeile);
       MakeDosLineBreaks(zeile);
     end;
   end;
     CloseFile(Datei);
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  i: Integer ;
begin
  if OpenDialog1.Execute then
  begin
   filecheck(OpenDialog1.FileName);
  end;
end;

end.
Wenn ich eine UNIX Textdatei öffne liefert er gefunden zurück und für die DOS Textdatei genauso ...
Mit dem Pos hatte ich es schon probiert und bin genau an dieser Stelle gescheitert (Danke Christian Seehase).

Gruss

ascotlx
workarounds gibt es wie Sand am Meer und manchmal hat man ein workaround ohne es zu wissen
  Mit Zitat antworten Zitat