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
- gban: Ingyen kellene, de tegnapra
- Mibe tegyem a megtakarításaimat?
- Küszöbön az androidos PC-k
- Gaming notebook topik
- Horgász topik
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- NFL és amerikai futball topik - Spoiler veszély!
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Mikrotik routerek
- További aktív témák...
- Samsung Galaxy S23+ 512GB, Kártyafüggetlen, 1 Év Garanciával
- HIBÁTLAN iPhone 12 Pro Max 256GB Pacific Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3371,100% Akkumulá
- Apple iPhone 15 Pro Max / 256GB / Kártyafüggetlen / 12 Hó Garancia / 98% akku
- HIBÁTLAN iPhone 14 Pro 256GB Deep Purple -1 ÉV GARANCIA -Kártyafüggetlen, MS3231
- BESZÁMÍTÁS! Asus X470 R9 5900X 32GB DDR4 1TB SSD RTX 3070 Ti 8GB Zalman Z1 PLUS A-Data 750W
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest