Visualizzazione dei risultati da 1 a 7 su 7

Discussione: legge da file

  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    35

    legge da file

    salve ragazzi, sono uno studente di ingegneria informatica che sta preparando l'esame di programmazione 1.
    ho un dubbio riguardante un argomento, dato che devo leggere da file alcuni dati tra cui dei CODICI FISCALI, prima di tutto come devo dichiarare l'Array che mi conterrà i file, e soprattutto che tipo devo dichiarare. e come faccio da quest'array e prelevare un elemento dato che devo lavorarci sopra.

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    613

    Re: legge da file

    Originariamente inviato da andreajk
    salve ragazzi, sono uno studente di ingegneria informatica che sta preparando l'esame di programmazione 1.
    ho un dubbio riguardante un argomento, dato che devo leggere da file alcuni dati tra cui dei CODICI FISCALI, prima di tutto come devo dichiarare l'Array che mi conterrà i file, e soprattutto che tipo devo dichiarare. e come faccio da quest'array e prelevare un elemento dato che devo lavorarci sopra.
    Un array di file (dove per file intendo un percorso) potrebbe essere un array di oggetti Path:
    http://docs.oracle.com/javase/tutori...io/fileio.html

    Se non sai utilizzare gli array però documentati prima sul loro funzionamento, sono basilari:
    http://docs.oracle.com/javase/tutori...ts/arrays.html

  3. #3
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,326
    Calma e sangue fresco.
    Hai posto tre domande diverse, nessuna delle quali ha a che fare con la lettura di file (che tipo di file? Non l'hai specificato) e tutte piuttosto confusionarie.

    prima di tutto come devo dichiarare l'Array che mi conterrà i file
    Di che array stai parlando?

    e soprattutto che tipo devo dichiarare.
    Tipo di che?

    e come faccio da quest'array e prelevare un elemento dato che devo lavorarci sopra.
    Per prelevare un elemento da un array in Java come in qualunque altro linguaggio di programmazione si usa il nome della variabile, indicizzato (tenendo conto che gli array sono 0-based, quindi il primo elemento ha indica 0, il secondo ha indice 1, ecc):

    codice:
    int[] mioArray = new int[10];   // Creo un array di 10 elementi interi
    int valore = mioArray[2];   // Prendo il terzo elemento dell'array
    Credo che, più che aiuto nel leggere da file (come recita il titolo della discussione) tu debba chiarirti dei concetti che stanno molto prima: come si lavora in Java (le regole base del linguaggio), quali sono le strutture dati basilari fornite dal linguaggio, quali sono le classi del core standard fornite dal linguaggio, ecc.

    PS: fai una ricerca anche in questo forum sull'argomento "lettura da file" e troverai centinaia di discussioni sull'argomento.

    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    35
    scusami hai ragione, cmq è un file txt, devo prendere i dati di questo file, lavorarli e poi scriverli su di un altro file.
    come mi consigliate di procedere?

  5. #5
    Se in questo file, ad esempio, è scritto un codice fiscale per riga, puoi usare questo codice:

    codice:
    public class Read {
    
    	public static void main(String[] args) {
    		String s;
    		try {
    			BufferedReader reader = new BufferedReader( new FileReader("/home/adriano/Desktop/doc") );
    			while( (s = reader.readLine()) != null ) {
    				System.out.println(s);
    			}
    
    			reader.close();
    		} catch (FileNotFoundException e) {
    			System.out.println("File non trovato: specificare correttamente il path");
    		} catch (IOException e) {
    			System.out.println("IOException");
    		}
    	}
    
    }
    Invece di eseguire il syso nel while, puoi inizializzare un tuo oggetto di tipo CodiceFiscale che prenda in input la stringa letta dal file.

    Innanzitutto ti consiglio un trim (elimini gli spazi).

    Un controllo potrebbe essere sulla lunghezza della stringa (lenght = 16), sul formato (6 lettere, 2 numeri, una lettera, 2 numeri, una lettera, 3 numeri, una lettera) e così via.

    E poi ci lavori quanto vuoi...

  6. #6
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,326
    Originariamente inviato da andreajk
    scusami hai ragione, cmq è un file txt, devo prendere i dati di questo file, lavorarli e poi scriverli su di un altro file.
    come mi consigliate di procedere?
    Non è che ci sia poi molto da consigliare:

    Leggere un file di testo:
    http://forum.html.it/forum/showthrea...readid=1475296
    http://forum.html.it/forum/showthrea...readid=1474053
    http://forum.html.it/forum/showthrea...readid=1380766

    Le classi in gioco:
    java.io.File
    java.io.FileReader
    BufferedReader

    Scrivere un file di testo:
    http://forum.html.it/forum/showthrea...readid=1512916
    http://forum.html.it/forum/showthrea...readid=1509179
    http://forum.html.it/forum/showthrea...readid=1484685

    Le classi in gioco:
    java.io.File
    java.io.FileWriter
    java.io.BufferedWriter
    java.io.PrintWriter

    Per ciascun elemento ti ho elencato 3 discussioni che riportano esempi e i link alla documentazione delle classi in gioco. Sono argomenti talmente "famosi" che si trovano esempi in tutto internet (oltre che qui sul forum, come puoi vedere).

    Direi che come materiale per iniziare ne hai.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    35
    grazie di tutto

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.