Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
A szövegstreamek egy vagy több sornyi szövegből állnak, amelyek szövegorientált megjelenítésre írhatók, hogy olvashatók legyenek. Amikor egy szövegfolyamból olvas, a program minden sor végén egy új vonalat olvas be. Amikor szövegfolyamba ír, a program egy új vonalat ír, amely jelzi a sor végét. A fájlok szövegének ábrázolására szolgáló célkörnyezetek eltérő konvencióinak egyeztetése érdekében a kódtárfüggvények módosíthatják a program és a szövegstream között továbbított karakterek számát és ábrázolását.
A szövegfolyamon belüli elhelyezés korlátozott. Az aktuális fájlhelyzetjelzőt a fgetpos vagy a ftell hívásával szerezheti meg. A szöveges streameket az így kapott pozícióba, vagy a stream elején vagy végén is elhelyezheti hívással fsetpos vagy fseek. Előfordulhat, hogy más pozícióváltás nem támogatott.
A maximális hordozhatóság érdekében a programnak nem szabad a következőt írnia:
- Üres fájlok.
- Szóköz karakterek a sor végén.
- Részleges sorok (a fájl végén lévő új vonal kihagyásával).
- A nyomtatható karaktereken, az új vonalon és a vízszintes lapon kívül más karakterek.
Ha ezeket a szabályokat követi, a szövegstreamből beolvasott karakterek sorozata megegyezik az ön által írt karaktersorozatkal, akár bájtként, akár többbájtos karakterként. Ellenkező esetben a könyvtári függvények eltávolíthatják az Ön által létrehozott fájlt, ha a fájl üres, amikor bezárja. Módosíthatják vagy törölhetik a fájlba írt karaktereket.
A bináris adatfolyamok egy vagy több bájtnyi tetszőleges információból állnak. Az tetszőleges objektumban tárolt értéket megírhatja egy (bájtorientált) bináris adatfolyamba, és pontosan beolvassa, hogy mit tárolt az objektum, amikor megírta. A könyvtárfüggvények nem módosítják a program és a bináris adatfolyam között továbbított bájtokat. Azonban tetszőleges számú NULL bájtot fűzhetnek hozzá a bináris adatfolyammal írt fájlhoz. A programnak a bináris stream végén kell kezelnie ezeket az extra NULL bájtokat.
A bináris adatfolyamon belüli elhelyezés jól definiált, kivéve a stream végéhez viszonyított elhelyezést. Az aktuális fájlhelyzetjelzőt ugyanúgy szerezheti be és módosíthatja, mint egy szöveges stream esetében. Az eltolások, amelyeket a ftell és a fseek használnak, a stream elejétől (mely bájt nulla) számított bájtokat jelentenek, így ezekkel az eltolásokkal végzett egész számtani műveletek kiszámítható eredményeket adnak.
A bájtstreamek bájtok sorozataként kezelik a fájlokat. A programon belül a stream ugyanúgy néz ki, mint a bájtok sorozata, kivéve a fent leírt lehetséges módosításokat.