PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Pascal Datei auslesen



dadie
17.01.2005, 20:43
Hi ,

Ich habe nach ewichkeiten ein Altes Programm von mir rausgekrammt für eine Bewerbung als System Elektroniker.So nun klppt das Programm aber nett ganz um genau zu sein
das Programm erstellt datein kann sie aber nicht lesen weil ich den Code nett kenne ^^°

Kennt jemand den befehlt auswendig ?

MFG

Dadie

Dingsi
17.01.2005, 20:56
Was für ein Befehlt?
Was für ein Code?
Was für ein Programm?

Mehr wohl formatierten Input bitte.

dadie
17.01.2005, 21:00
Was für ein Befehlt?
Was für ein Code?
Was für ein Programm?

Mehr wohl formatierten Input bitte.

Befehlt um eine Datei auszulesen (z.B. C:\test.txt )
Den code den man dafür brauch -_-
Mein Selbstgeschreibenes Word für DOS :D

Master of Disaster
18.01.2005, 00:45
http://www.db.informatik.uni-kassel.de/Help/pascal/einfuehrung/pas5open.html

*hust*Google, 'dateien pascal' Hit Nr. 10 *hust*

dadie
18.01.2005, 14:46
http://www.db.informatik.uni-kassel.de/Help/pascal/einfuehrung/pas5open.html

*hust*Google, 'dateien pascal' Hit Nr. 10 *hust*

*hust* -_-

46 / 9 dadiew~1.pas
Error: Incompatible type for arg no. 1: Got SHORTSTRING, expected FILE

64 dadiew~1.pas
Fatal: There were 1 errors compiling module, stopping


Das sagt mein Compiler dazu :(

vieleicht hilft ja der Quell code weiter (Bitte nett lachen ist mein Erstes Programm)



PROGRAM Dadie_Word;
USES Crt;
VAR Datei, Datei2: Text; auswahl, text, pfad, Zeile: String;
BEGIN

ClrScr;

Writeln ('Dadie Word 0.0.1a Start');
Writeln ('Was wollen sie machen ? Neue Datei = new oder Datei lesen = read');
ReadLn (auswahl);
IF auswahl = 'new' THEN
BEGIN

Writeln ('Bitte Dateipfad eintragen (z.B. C:\testdatei.txt) ');

ReadLn (pfad);


Write ('Die Datei ');
Write (pfad);
WriteLn (' wurde Erstellt');
Writeln ('Bitte kill eingeben um das Programm zu beenden ');


Assign (Datei, pfad);
ReWrite (Datei);
WriteLn ('Geben Sie nun den Text ein, der in die Datei geschrieben werden soll ... ');

REPEAT
ReadLn (text);
IF text <> 'kill' THEN WriteLn (Datei, text);
UNTIL text = 'kill' ;
Close (Datei);
END
ELSE
BEGIN

IF auswahl = 'read' THEN
BEGIN
Writeln ('Datei angeben (z.B. C:\testdatei.txt) ');
ReadLn (pfad);
Writeln ('Datei wir gelesen bitte warten ....(bitte mit Enter bestätigen)');
ReadKey;



Assign( Datei2, 'pfad');
Reset( Datei2);
while not EoF( Datei2) do
begin
ReadLn( Datei2, Zeile);
Process( Zeile);
end;
Close( Datei2);



Writeln ('Programm beenden mit ENTER');
ReadKey;
END
ELSE
BEGIN
ClrScr;
Writeln ('Fehler 0001 Falsche eingabe.Das Programm wird beended');
Writeln ('Bestädigen sie den fehler mit ENTER');

ReadKey;
END;

END;



END.


EDIT:

Kommt schon hier gibt es soviele Programmierer im Forum wo ist der fehler ?

Ineluki
19.01.2005, 02:39
was hast du fuer ein pascal .. da gibt es unterschiede, z.b. turbo pascal 7.0, tpw, delphi, freepascal ... also was fuer einen compiler hast du ?

zudem sieht es mir sehr seltsam aus, dass du eine variable mit namen text definierst, was ja eigentlich der bezeichner des datentyps text = file of char ist ... benene die variable text mal um ...

Gruss Ineluki

dadie
19.01.2005, 13:00
Achja Freepascal neueste Version habe ich und kamm damit bisher recht gut weg :)