Aktív témák
-
KovacsUr
addikt
A c:= felesleges, ha bekapcsolod az extended syntax (bővített szintakszis) fordítási direktívát: {$X+}
A readkey visszatérési értékére nincs szükségünk, úgyhogy felesleges is eltárolni.
(Mivel a TP fordítója is optimalizál, igaziból a kimenet szempontjából nem számít sokat a dolog. Kicsit tisztább a forráskód, ha nem mented el a felesleges visszatérési értéket.) -
Szenty
tag
Na, most jön egy kis szőrszálhasogatás :D.
[...]
if ioresult <> 0 then begin writeln('A file nem letezik'); c:=readkey; halt; end; {ha nincs ilyen
Itt elég lenne egy szipla readkey; is.
[...]
c:=readkey; {addig nem lepek ki, mig nem nyomtak meg semmit}
halt;
end.
Itt meg ha úgy is vége a programnak, nincs szükség halt-ra. :)
Üdv,
Szenty
u.i.: 1995 óta programozok Pascalban (autódidakta módon kezdtem), majd abból érettségiztem 2000-ben. Azóta is szeretem a Pascalt, néha még most is kódolgatok benne. (FreePascalban)
[Szerkesztve] -
b14
senior tag
Itt az elozo program beolvasasra kesz valtozata.
uses crt;
var
s:string;
c:char;
f:text;
begin
clrscr;
assign(f,'filename.kit'); {itt hozzárendelem a fizikai filehoz a logikai változót}
{$I-} {itt kikapcsolom a bemenet-kimenet ellenorzést}
reset(f); {olvasasra megynitom a filet, es az elejere teszem a file mutatojat}
{$I+}; {itt visszakapcsolom a bemenet-kimenet ellenorzést}
if ioresult <> 0 then begin writeln('A file nem letezik'); c:=readkey; halt; end; {ha nincs ilyen file akkor hibauzenet}
repeat
readln(f,s); {a filebol beolvas egy sort}
writeln(s); {kiirja a beolvasott sort}
until eof(f); {a file vegen hagyja abba}
close(f); {lezarom a filet}
c:=readkey; {addig nem lepek ki, mig nem nyomtak meg semmit}
halt;
end. -
b14
senior tag
Lehet, hogy abszolút hüleséget csinálok, de szerintem a programnak, ami beolvas és fileba ír így néz ki:
uses crt;
var
s:string;
f:text;
begin
clrscr;
assign(f,'fileneame.kit'); {itt hozzárendelem a fizikai filehoz a logikai változót}
{$I-} {itt kikapcsolom a bemenet-kimenet ellenőrzést}
append(f); {irasra megnyitom a filet es a fie vegere teszem a file mutatojat}
{$I+}; {itt visszakapcsolom a bemenet-kimenet ellenőrzést}
if ioresult <> 0 then rewrite(f); {ha nem létezik a file, akkor új, üres filet hozok létre}
repeat
c:=readkey; {a billentyűetről karaktert vár}
if ord(c) <> 27 then write(f,c); {ha nem escet nyomtak le akkor a fileba irja a leütött karaktert}
until ord(c) = 27; {esc - nel abbhagyja a bekerest}
close(f); {lezarom a filet}
c:=readkey; {addig nem lepek ki, mig nem nyomtak meg semmit}
halt;
end. -
KovacsUr
addikt
válasz
centauri99
#12
üzenetére
Jól deklarálta, ez egy szöveges fájl típusú változó, nem típus nélküli fájl.
[Szerk.]
A program többi része nem egészen azt csinálja, amire szánták, de ez már más kérdés. :) -
KovacsUr
addikt
Januári a topic, de köszönjük a témaindító nevében is ;)
-
űáélkM
tag
Én úgy tudom, Append kell a reszet helyett, de lehet, hogy csak íráshoz.
[Szerkesztve] -
Shub
csendes tag
Hi!
Én így csinálnám:
program FileBeolv;
uses Crt;
var sor:String; f:Text;
begin
Assign(f, 'd:ile.txt');
Reset(f);
ReadLn(sor);
WriteLn(sor); {Grafikus felületen ''OutText''}
end.
Ha több soros:
program FileBeolv;
uses Crt;
var sor:String; x, y:Integer; f:Text;
begin
Assign(f, 'd:ile.txt');
Reset(f);
x:=5;
y:=10;
Repeat
ReadLn(sor);
x:=x;
y:=y+2;
GotoXY(x, y);
WriteLn(sor);
Until KeyPressed;
end.
Talán így, de ez nem tuti.
Hali!
[Szerkesztve] -
The_Tom
senior tag
ugyan nagyon regen volt mar, de megprobalom felidezni: annyit csinal, hogy a megadott filet, karakterenkent beolvassa es kiirja a kepernyore.
uses crt;
var
f : text;
chp : char;
const
fnev ='filenev.txt';
begin
clrscr;
assign(f,fnev);
reset(f);
repeat
read(f,chp);
write(chp);
until eof(f);
readln;
end.
persze nem csak karakretenkent tudod kiolvasni, hanem amilyen darabonkent neked kell, asszem max 255 karakter, mert annyi egy string maximalis hossza, bar lehet hogy tudsz ennel nagyobbat definialni magadnak, ezt mar nemtom ennek nezz utana.
Üdv.
[Szerkesztve] -
salazol
őstag
Régen pascaloztam, de úgy rémlik, hogy mielőtt resetelnéd, előtte kell egy assign.
Assign(fajl,'fileneve.txt');
Ahol a fajl az általad deklarált változónév, amivel a progiban hivatkozol rá, a 'fileneve.txt' meg a fájl valódi neve a vinyón.
Remélem nem tévedek, régen volt.
[Szerkesztve] -
_az
senior tag
Mé? Nem teccett a neveee??? :DDD
Mellesleg... KÖSZIKEEE!!!!
Ilyesmit valahogy nem találtam a könyvben.
Na, majd még írok ha v.mi problemo van...
:C
Üdv! -
Divi
aktív tag
Ha jol emlekszek akkor lehet sorokat beolvastatni TXT fáljból.
Ha nem jól emlékszek akkor ez is hülyeség lesz. (Ha a sor hosszabb 255 karaternél akkor a sor vége lemarad)
...
Type
FileT = File Of TEXT;
Var
i: Integer;
fajl: FileT;
sor: String;
Begin
Reset(fajl)
While NOT (eof(fajl) do
Begin
Readln(fajl,sor)
{ Itt átmentheted a sor változót pl. egy vektorba. }
End;
Close(fajl);
End.
Feleősséget nem vállalok :)
... -
_az
senior tag
Üdv pubikáim, egy nagy kérdésem lenne a fent említett programmal...
Hogyan tudok pascalba beolvasni egy külső szöveget? Pl. egy *.txt fájlt??
A könyvemben csak annyit találtam, hogy ''ripít ... ántil end of fájl''. Ez most szép meg jó, de ezek szerint olyan okos, hogy azonnal kitalálja, melyik szöveget akarom alakítgatni? Help!
THX.
Aktív témák
- Milyen okostelefont vegyek?
- E-roller topik
- Luck Dragon: Asszociációs játék. :)
- AMD FX
- Dell notebook topic
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Debrecen és környéke adok-veszek-beszélgetek
- iPhone topik
- A TCL egyebek mellett egy 1040 Hz-re képes monitorral készül az idei évre
- VR topik
- További aktív témák...
- Magyar kiosztású Apple Magic Keyboard 2, Touch ID, teljes méretű
- Új Mac Studio M4 Max 2025 14C CPU /32C GPU / 36GB RAM / 512GB - 1 ÉV APPLE GARANCIA
- 2026 MacBook Air / MacBook Pro / M5 - M5 Pro - M5 MAX 14" / 16"
- Asus 15.6,core i3 8145U(4x3,9Ghz)IntelUHD VGA,MAGYAR Vil.bill.,8-20GB RAM,SSD+HDD?,,Win.11
- LG UltraGear 27GS85Q-B NanoIPS/2K/200HZ (068)
- Bomba áron dobozos Hp Laptop! /AMD Ryzen 5-7520U/8 GB/256 SSD/FHD/Garancia
- Bomba ár! HP ProBook 445 G9 - Ryzen 3 5425U + Radeon I 8GB I 256SSD I 14" I Cam I W11 I Garancia!
- Szuper áron eladó Honor MagicBook 16 Series /Ryzen5-5600H/16GB/512 SSD/FHD/IPS/144Hz
- LG UltraGear Gaming Monitorok : FRISS -30%
- HP EliteBook 840 G7 14" i5 10210u, 16GB RAM, SSD, jó akku, számla, 6 hó gar
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
