Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Αρχεία Δεδομένων. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Σχετικά έγγραφα
Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Μορφοποίηση και Αρχεία Δεδομένων. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Προγραμματισμός Η/Υ. Χειρισμός Αρχείων. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

ΕΠΛ031 - Εισαγωγή στον Προγραμματισμό

Προγραμματισμός Η/Υ. 7 η ενότητα: Αρχεία. Τμήμα. Τεχνολόγων Περιβάλλοντος. ΤΕΙ Ιονίων Νήσων. Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων

(Κεφάλαιο 2.7 και 12) Αρχεία στην C. (Διάλεξη 15)

Αντικειμενοστρεφής Προγραμματισμός -Python. Κ.Π. Γιαλούρης

Είσοδος -Έξοδος. Άνοιγµα αρχείου:

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ ΠΙΝΑΚΕΣ. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Αρχεία Ένα αρχείο αποτελείται από μία σειρά ομοειδών δεδομένων που ονομάζονται λογικές εγγραφές (logical record)

Fortran και Αντικειµενοστραφής προγραµµατισµός.

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ ΠΙΝΑΚΕΣ. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Μεθόδων Επίλυσης Προβλημάτων

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Μορφοποίηση. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

FORTRAN και Αντικειμενοστραφής Προγραμματισμός

Προγραμματισμός Ι. Είσοδος/Έξοδος. Δημήτρης Μιχαήλ. Ακ. Έτος Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Εργαστήριο 9: Αρχεία

S, (5, -3, 34, -23, 7) ( *, _

(Κεφάλαιο 2.7 και 12) Αρχεία στην C. ( ιάλεξη 13) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

ΚΕΦΑΛΑΙΟ 9 ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ

Κεφάλαιο 12: Είσοδος και έξοδος δεδομένων σε αρχεία

Κεφάλαιο VΙ: Προσπέλαση Αρχείων. 5.1 Αρχεία δεδομένων.

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

Πως θα αποθηκεύσει τη λίστα με τα ψώνια του και θα την ανακτήσει στο Σ/Μ; και πως θα προσθέσει στη λίστα του επιπλέον προϊόντα;

Διάλεξη 2. Μεταβλητές - Δομές Δεδομένων - Eίσοδος δεδομένων - Έξοδος: Μορφοποίηση - Συναρτήσεις. Διοργάνωση : ΚΕΛ ΣΑΤΜ

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Δομή Επιλογής. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Αρχιτεκτονική Υπολογιστών

Οντοκεντρικός Προγραμματισμός ΦΡΟΝΤΙΣΤΗΡΙΟ JAVA

FORTRAN και Αντικειμενοστραφής Προγραμματισμός

Αναφορά (1/2) Μπορούμε να ορίσουμε μια άλλη, ισοδύναμη αλλά ίσως πιο σύντομη, ονομασία για ποσότητα (μεταβλητή, σταθερή, συνάρτηση, κλπ.

Προγραμματισμός Η/Υ (ΤΛ2007 )

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Εισαγωγή στην FORTRAN. Δρ. Ιωάννης Λυχναρόπουλος

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων

Προγραμματισμός και Εφαρμογές Υπολογιστών

Δομή προγράμματος στη Fortran

Κεφάλαιο 8ο: Αρχεία. 8.1 Τι είναι αρχείο;

Δομή προγράμματος στη Fortran

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Δομή Επανάληψης. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2017

Λειτουργικά Συστήματα Ι. Καθηγήτρια Παπαδάκη Αναστασία

8 FORTRAN 77/90/95/2003

ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ

Μετατροπή χαρακτήρων ASCII σε ακέραιο αριθµό (atoi) & Άνοιγµα αρχείου µέσα από τo QtSPIM, διάβασµα, και αποθήκευση του περιεχοµένου του στη µνήµη

Εναλλακτικές εντολές για ανάγνωση/εγγραφή

ΛΥΚΕΙΟ ΣΟΛΕΑΣ Σχολική χρονιά

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Δρ. Ιωάννης Λυχναρόπουλος Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας

Ανάπτυξη και Σχεδίαση Λογισμικού

Διάλεξη 18η: Διαχείρηση Αρχείων

Σχολικό Βιβλίο - Κεφάλαιο 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ PASCAL ΠΑΡΟΥΣΙΑΣΗ 13

- Αναπαράσταση ακέραιας τιµής : - Εύρος ακεραίων : - Ακέραιοι τύποι: - Πράξεις µε ακεραίους (DIV - MOD)

Εισαγωγή στο Προγραμματισμό για Μηχανολόγους Οδηγός Προετοιμασίας για τη Τελική Εξέταση

Fortran και Αντικειμενοστραφής προγραμματισμός.

Λειτουργικά Συστήματα Κεφάλαιο 2 Οργάνωση Συστήματος Αρχείων 2.1 Διαχείριση Αρχείων και Σύστημα Αρχείων(File System)

ΕΠΛ031 - Εισαγωγή στον Προγραμματισμό

Κεφάλαιο 7 ο Βασικές Έννοιες Προγραμματισμού (σελ )

Εισαγωγή στον Προγραμματισμό

Διαγραφή Επιλέγετε Διαγραφή για να διαγράψετε μία ήδη υπάρχουσα διαδικασία εισαγωγής ASCII

2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ

Λιβανός Γιώργος Εξάμηνο 2017Β

ΑΡ Χ Ε Ι Α Κ Ε Ι Μ Ε Ν Ο Υ (text files)

Εισαγωγή στην Επιστήμη της Πληροφορικής Εργαστήριο. UNIX Μέρος 1

ΦΥΣ-151. Ηλεκτρονικοί Υπολογιστές Ι (FORTRAN 77) (Άνοιξη 2004)

ΠΡΟΒΛΗΜΑ ΕΠΕΓΕΡΓΑΣΙΑ. (Είναι οι σκέψεις και οι πράξεις που κάνουμε για να λυθεί το πρόβλημα) ΕΙΣΟΔΟΥ - ΕΞΟΔΟΥ

ΦΥΣ 145 Υπολογιστικές Μέθοδοι στη Φυσική. Πρόοδος 26 Μαρτίου 2007 Ομάδα 1 η

ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΣΕ ΔΙΣΚΕΤΑ ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΑΠΟ ΔΙΣΚΕΤΑ. Από τον κατάλογο που εμφανίζεται επιλέγω: Αποστολή προς Δισκέτα (3,5)

ΦΥΣ-151. Ηλεκτρονικοί Υπολογιστές Ι (FORTRAN 77) (Άνοιξη 2004)

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων

ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ:

Λειτουργικά Συστήματα (Λ/Σ)

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 7 ο Τι πρέπει να έχουμε υπ όψιν μας για την επιλογή της κατάλληλης γλώσσας προγραμματισμού;

ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / Γ ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 27/01/2013

Μετατροπή χαρακτήρων ASCII σε αριθμό (atoi) & διάβασμα, και αποθήκευση του περιεχομένου του στη μνήμη. (Διάλεξη. Πανεπιστήμιο Κύπρου

Διαχείριση Βάσης Δεδομένων (dbadmin)

Ενότητα 4. Εισαγωγή στην Πληροφορική. Αναπαράσταση δεδοµένων. Αναπαράσταση πληροφορίας. υαδικοί αριθµοί. Χειµερινό Εξάµηνο

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL

Microsoft Excel Κεφάλαιο 1. Εισαγωγή. Βιβλίο εργασίας

Βιβλιοθήκη stdio. Προγραμματισμός II 1

Λειτουργικά Συστήματα (ΙΙ) (διαχείριση αρχείων)

FORTRAN και Αντικειμενοστραφής Προγραμματισμός

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Ένα πρώτο πρόγραμμα ΔΟΜΗ TOY ΠΡΟΓΡΑΜΜΑΤΟΣ. Τι σημαίνουν οι εντολές. Από τι αποτελείται ένα πρόγραμμα

Πληροφορική 2. Δομές δεδομένων και αρχείων

Πρόλογος... xiii ΜΕΡΟΣ 1 1 Εισαγωγή στο Excel Βασικές λειτουργίες του Excel... 21

- program p_name(input) - uses crt

Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης

Λειτουργικά Συστήματα. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

Η πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης

Εισαγωγή στον Προγραμματισμό Η/Υ (Fortran 90/95/2003)

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ - UNIX. Συστήματα Αρχείων. Διδάσκoντες: Καθ. Κ. Λαμπρινουδάκης Δρ. Α. Γαλάνη

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον

Κεφάλαιο 7: Υποπρογράμματα. Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών

Διαδικασιακός Προγραμματισμός

Streams Input / Output in C++ George Kastrinis

A2. Να γράψετε για κάθε περίπτωση τον αριθμό της πρότασης και δίπλα το γράμμα που δίνει τη σωστή επιλογή.

Ο τελεστής ανάθεσης και οι εντολές εισόδουεξόδου

Βιβλιοθήκη stdio. Προγραμματισμός II 1

Δομημένος Προγραμματισμός

Στόχοι και αντικείμενο ενότητας. Τύπος πίνακα. Τύπος πίνακα (συν.) #6. Πίνακες και Δείκτες

ΦΥΣ 145 Μαθηµατικές Μέθοδοι στη Φυσική. Πρόοδος 20 Μαρτίου 2011 Οµάδα

ΦΥΣ 145 Μαθηµατικές Μέθοδοι στη Φυσική. Πρόοδος 28 Μαρτίου 2009 Οµάδα 1 η

ΦΥΣ 145 Υπολογιστικές Μέθοδοι στη Φυσική. Πρόοδος 26 Μαρτίου 2007 Ομάδα 1 η

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική

Transcript:

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Αρχεία Δεδομένων Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

ΑΡΧΕΙΑ Αρχείο είναι μία οργανωμένη συλλογή δεδομένων αποθηκευμένα στο δίσκο του Η/Υ Τα είδη των αρχείων που μπορεί να επεξεργαστεί η FORTRAN είναι τα: 1) Σειριακά Αρχεία 2) Αρχεία Άμεσης Προσπέλασης Στα πλαίσια του Μαθήματος θα μελετήσουμε μόνον τα Σειριακά Αρχεία Τα Σειριακά Αρχεία είναι αρχεία κειμένου και μπορούμε να τα ανοίξουμε με ένα κειμενογράφο μέσα από τα Windows. Μπορεί να έχουν οποιοδήποτε όνομα και επέκταση, αλλά βολεύει να δίνουμε σαν επέκταση το.txt

Χρήση Αρχείων (Λογικές μονάδες εισόδου/εξόδου) Η χρήση των λογικών μονάδων εισόδου / εξόδου περιλαμβάνει τρία στάδια Άνοιγμα ενός αρχείου (open) Αντιστοίχιση σε μια λογική μονάδα Ονομασία ενός αρχείου Ανάγνωση/Εγγραφή στη λογική μονάδα (read/write) Συσχέτιση με μια λογική μονάδα Λίστα μεταβλητών Κλείσιμο λογικής μονάδας (close) Συσχέτιση με μια λογική μονάδα

Αρχεία Η ταυτότητα ενός αρχείου καθορίζεται από Τη διαδρομή του αρχείου στον σκληρό δίσκο (path) Το όνομα του αρχείου Τον τύπο του αρχείου (που καθορίζεται από την επέκταση του αρχείου) π.χ C:\fortran\project1\results.txt Τα αρχεία προσδιορίζονται από τον χρήστη με την πλήρη τους ταυτότητα σαν αλφαριθμητικά δεδομένα Κάθε αρχείο αποτελείται από πεδία Το πεδίο είναι μια ακολουθία εκτυπώσιμων και μη χαρακτήρων Το τελευταίο πεδίο κάθε αρχείου είναι το EOF (μη εκτυπώσιμο)

Εντολή OPEN Συνδέει ένα αρχείο σε μια λογική μονάδα ή Δημιουργεί ένα νέο αρχείο και το συνδέει σε μια λογική μονάδα ή Αλλάζει συγκεκριμένες ιδιότητες μιας σύνδεσης ΣΥΝΤΑΞΗ OPEN ([UNIT=]io-unit [, FILE=name] [, ERR=label] [, IOSTAT=i-var], ) io-unit: ετικέτα λογικής μονάδας (ακέραια μεταβλητή) name: το όνομα (και η θέση) του αρχείου ( τύπου character) label: προσδιορισμός ενεργειών σε περίπτωση λάθους i-var: ετικέτα προσδιορισμού λάθους κατά την εκτέλεση

Σύνταξη της εντολής OPEN Απλή μορφή: Πλήρης μορφή: Χειρισμός σε περίπτωση σφάλματος open(10, file= data.txt, iostat=st) if (st /= 0) then print*, Sfalma kata to anoigma tou arxeiou! else.. end if Το άνοιγμα του αρχείου (εντολή open) πρέπει να συνοδεύεται από κλείσιμό του (εντολή close) όταν δεν πρόκειται να χρησιμοποιηθεί περεταίρω

Παραδείγματα open Απλό Άνοιγμα αρχείου open(10,file='data.txt') Άνοιγμα αρχείου με έλεγχο σφάλματος open(10,file='data.txt',iostat=st) Άνοιγμα αρχείου με έλεγχο αν το αρχείο υπάρχει open(10,file='data.txt',status='old',iostat=st) Άνοιγμα αρχείου με τοποθέτηση του εσωτερικού δείκτη στο τέλος του open(10,file='data.txt',position='append')

Λογικές Μονάδες Εισόδου/Εξόδου Οι λογικές μονάδες εισόδου/εξόδου χωρίζονται σε δυο κατηγορίες Εσωτερικές: εικονικός χώρος που δεσμεύεται στη RAM Εξωτερικές: οθόνη, πληκτρολόγιο, αρχεία, συσκευές ΟΝΟΜΑ ΣΗΜΑΣΙΑ 0, 6 Οθόνη Η/Υ 5 Πληκτρολόγιο Η/Υ * Οθόνη Η/Υ (write), Πληκτρολόγιο Η/Υ (read) Θετικός ακέραιος αριθμός Συσχέτιση με κάποιο αρχείο (π.χ. 10, 102, ) Αλφαριθμητική μεταβλητή Καταχώρηση σε εσωτερική μονάδα

Παρατηρήσεις Κατά το άνοιγμα ενός αρχείου (εντολή open), δεσμεύεται ένας χώρος (buffer) στη μνήμη RAM και δημιουργείται μία συσχέτιση με το αρχείο στο δίσκο. Ότι γράφουμε στο αρχείο, γράφετε πρώτα στον buffer. Τα δεδομένα γράφονται αυτόματα στο πραγματικό αρχείο όταν ο buffer γεμίσει, ή όταν κλείσουμε το ανοικτό αρχείο. Αν θέλουμε να γράψουμε τα δεδομένα του buffer στο αρχείο σε οποιαδήποτε άλλη στιγμή, τότε καλούμε την: call flush(ν)! Ν=ο αριθμός της λογικής μονάδας του αρχείου Προσοχή: ΔΕΝ ΥΠΟΣΤΗΡΙΖΕΤΑΙ ΑΠO ΤΗΝ FTN95 Κατά το κλείσιμο του αρχείου (εντολή close) αποδεσμεύονται οι δεσμευμένοι πόροι (διαγράφεται ο buffer αφού προηγουμένως έχουν σωθεί τα περιεχόμενά του στο αρχείο) Με το τέλος του προγράμματος, όλα τα ανοικτά αρχεία κλείνουν αυτόματα, παρόλα αυτά καλό είναι να τα κλείνουμε μόνοι μας με την εντολή close όταν δεν τα χρειαζόμαστε άλλο Το τέλος ενός αρχείου σημειώνεται με το κρυφό πεδίο EOF (end of file).

Μετακίνηση εσωτερικού δείκτη τρέχουσας γραμμής π.χ. Έστω ότι έχουμε κάνει open(10,file= data.txt ) Προς τα εμπρός μία γραμμή read(10,*) Παρατήρηση: Κάθε εντολή read(10, ) ή write(10,..) μετακινεί τον εσωτερικό δείκτη μία γραμμή πιο κάτω Προς τα πίσω μία γραμμή backspace(10) Στην αρχή του αρχείου rewind(10) Κενό: Χωρίς να χρησιμοποιήσουμε κάποια μεταβλητή

Έλεγχος αν το αρχείο υπάρχει στο δίσκο Έλεγχος κατά το open π.χ. integer::st open(10,file= data.txt, status='old',iostat=st) if (st/=0) then print*, To arxeio den yparxei else print*, To arxeio yparxei end if Έλεγχος με την εντολή inquire π.χ. logical::ex inquire(file='b.txt',exist=ex) if (.not. ex) then print*, To arxeio den yparxei else print*, To arxeio yparxei end if

Είδη σειριακών αρχείων Οριοθετημένα (με κενά, κόμμα κ.τ.λ.) π.χ. οριοθετημένα με κόμμα (csv: comma separated values) 133,2,532,54 1,34,5442,3 44,5236,32,2 Τα διαβάζουμε με ελεύθερο format Σταθερού πλάτους 133 2 532 54 1 34 5442 3 44 5236 32 2 Μπορούμε να τα διαβάσουμε με ελεύθερο format, εκτός αν υπάρχουν αλφαριθμητικά που περιέχουν κενά. Προτιμότερο είναι να τα διαβάζουμε με format.

Παραδείγματα Read οριοθετημένου αρχείου Έστω οι μεταβλητές: integer::x; real::y,z; character(50)::s Tότε με την εντολή read(10,*) x,y,z,s διαβάζονται τα οριοθετημένα αρχεία είτε με κόμμα: 3,554.34,53.E-2, Giwrgos Basileioy 21,4.435,64.3E+2, Giannis Argyropoulos 32,554.7,54.553E-5, Marina Papakwsta είτε με κενά: 3 554.34 53.E-2 Giwrgos Basileioy 21 4.435 64.3E+2 Giannis Argyropoulos 32 554.7 54.553E-5 Marina Papakwsta Τα εισαγωγικά είναι υποχρεωτικά μόνον αν το αλφαριθμητικό περιέχει κενά, όπως εδώ (ανάμεσα στο όνομα και το επώνυμο).

Παραδείγματα Read αρχείου σταθερού πλάτους στηλών Έστω οι μεταβλητές: integer::x; real::y,z; character(50)::s Tότε με την εντολή read(10, (Ι2,2Χ,F6.3,2X,E9.3,2X,A20) ) x,y,z,s διαβάζεται το αρχείο σταθερού πλάτους: 3 554.34 53.e-2 Giwrgos Basileioy 21 4.435 64.3E+2 Giannis Argyropoulos 32 554.7 54.553E-5 Marina Papakwsta Επίσης το ίδιο αρχείο διαβάζεται και με την εντολή read(10,*) x,y,z,s αλλά τότε απαιτούνται τα εισαγωγικά στα αλφαριθμητικά που περιέχουν κενά. Δεν απαιτούνται εισαγωγικά όταν κάνουμε read με format

Διάβασμα μιας ολόκληρης γραμμής σε μία μεταβλητή Θα πρέπει να αποθηκεύσουμε την γραμμή σε μία μεταβλητή χαρακτήρα χρησιμοποιώντας read με format Α π.χ. character(80)::s! Το 80 είναι ενδεικτικό open(10,file='data.txt') read(10,'(a)') s Γράψιμο χωρίς αλλαγή γραμμής open(20,file='results.txt') write(20,*,advance='no') x,y Στα αρχεία δεν λειτουργεί ο μορφοποιητής \

Διάβασμα μέχρι το τέλος ενός αρχείου, αν δεν γνωρίζουμε το πλήθος των γραμμών Έστω π.χ. ότι έχουμε ένα αρχείο με 3 ακεραίους ανά γραμμή, τότε: integer::x,y,z,st open(10,file= data.txt ) do read(10,*,iostat=st) x,y,z if (st==-1) exit <επεξεργασία των x,y,z> end do st==-1 σημαίνει ότι φτάσαμε στο EOF

Ειδική χρήση αρχείων για μετατροπή αριθμών σε αλφαριθμητικά Έστω ότι επιθυμούμαι να συνενώσουμε ένα αλφαριθμητικό με έναν ακέραιο (o οποίος βρίσκεται σε μια μεταβλητή). π.χ. το 'test' με το 452 και στη συνέχεια με το '-a', ώστε τελικά να πάρουμε: 'test452-a' character(15)::s1='test',s2,s integer::n=452 write(s2,'(i5)') n s=trim(s1)//trim(adjustl(s2))// '-a' print*,s H Fortran επιτρέπει να χρησιμοποιήσουμε ένα αλφαριθμητικό αντί του αριθμού της λογικής μονάδας.

Δυναμική Δημιουργία Αρχείων Έστω ότι θέλουμε να δημιουργήσουμε 9 αρχεία με ονόματα: data_1.txt, data_2.txt,, data_9.txt character(50)::f Integer::n do n=1,9 f='data_' // achar(iachar( 0 )+n) // '.txt' open(10*n,file=trim(f))... close(10*n) end do Τα write και read πρέπει να αναφέρονται στη λογική μονάδα 10*n Μετατροπή ψηφίου σε χαρακτήρα Προσοχή: Απαιτείται η χρήση της trim