Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13

Discussione: gestione degli archivi

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2010
    Messaggi
    86

    gestione degli archivi

    ragazzi ho un file di testo con questo contenuto:

    codice:
    #File_definizione_mazzo_originale_Triple_Triad:
    NAME=Final_Fantasy_VIII
    SDESC=Mazzo_originale_da_Final_Fantasy_VIII
    #Livello_1:
    1,Geezard,geezard,1,4,1,5,9
    1,FungoOngo,fungoongo,5,1,1,3,9
    1,Lesmathor,lesmathor,1,3,3,5,9
    1,Red_Bat,redbat,6,1,1,2,9
    1,Blinura,blinura,2,3,1,5,9
    1,Gyala,gyala,2,1,4,4,0
    1,Gesper,gesper,1,5,4,1,9
    1,Focaral_Finto,focaralfinto,3,5,2,1,1
    1,Bloferth,bloferth,2,1,6,1,9
    1,Kedachiku,kedachiku,4,2,4,3,9
    1,Cockatoris,cockatoris,2,1,2,6,0
    #Livello_2:
    2,Grat,grat,7,1,3,1,9
    2,Buel,buel,6,2,2,3,9
    2,Mesmerize,mesmerize,5,3,3,4,9
    2,Glacial_Eye,glacialeye,6,1,4,3,2
    2,Belhelmelhel,belhelmelhel,3,4,5,3,9
    2,Trhustevis,trhustevis,5,3,2,5,3
    2,Anacondar,anacondar,5,1,3,5,4
    2,Creeps,creeps,5,2,5,2,0
    2,Grendell,grendell,4,4,5,2,0
    2,Double_Hagger,doublehagger,3,2,1,7,9
    2,Belos,belos,5,2,5,3,9
    #Livello_3:
    3,Liforbidden,liforbidden,6,6,3,2,9
    3,Armadodo,armadodo,6,3,1,6,1
    3,Triarchigos,triarchigos,3,5,5,5,4
    3,Focaral,focaral,7,5,1,3,1
    3,Gojusheel,gojusheel,7,1,5,3,2
    3,Ochu,ochu,5,6,3,3,9
    3,SAM08G,sam08g,5,6,2,4,5
    3,Wild_Hook,wildhook,4,4,7,2,5
    3,Kyactus,kyactus,6,2,6,3,9
    3,Tomberry,tomberry,3,6,4,4,9
    3,Abyss_Worm,abyssworm,7,2,3,5,1
    #Livello_4:
    4,Greyos,greyos,2,3,6,7,9
    4,Vysage,vysage,6,5,4,4,9
    4,Archeosaurus,archeosaurus,4,6,2,7,9
    4,Piros,piros,2,7,6,3,5
    4,Blitz,blitz,1,6,4,7,0
    4,Wendigo,wendigo,7,3,1,6,9
    4,Kwaul,kwaul,7,4,4,4,9
    4,Galkimasela,galkimasela,3,7,3,6,9
    4,Dragon_Izolde,dragonizolde,6,2,7,3,4
    4,Adamanthart,adamanthart,4,5,5,6,1
    4,Melth_Dragon,melthdragon,7,5,4,3,5
    #Livello_5:
    5,Thythan,thythan,6,5,6,5,9
    5,Behemoth,behemoth,3,6,5,7,9
    5,Chimera,chimera,7,6,5,3,6
    5,Koyokoyo,koyokoyo,3,A,2,1,9
    5,Invinta,invinta,6,2,6,7,9
    5,GIM47N,gim47n,5,5,7,4,9
    5,Molboro,molboro,7,7,4,2,4
    5,RubRum_Dragon,rubrumdragon,7,2,7,4,5
    5,Elnoyle,elnoyle,5,3,7,6,9
    5,Re_Tomberry,retomberry,4,6,7,4,9
    5,Wedge_&_Biggs,wedge&biggs,6,6,2,7,9
    #Livello_6:
    6,Fuijin_&_Raijin,fuijin&raijin,2,8,8,4,9
    6,Herbia,herbia,7,8,3,4,3
    6,X-ATM092,xatmo92,4,8,7,3,9
    6,Granaldh,granaldh,7,2,8,5,9
    6,Namtal_Utoku,namtalutoku,1,8,8,3,4
    6,Shumelke,shumelke,8,2,8,2,9
    6,Abadon,abadon,6,8,4,5,9
    6,Dolmen,dolmen,4,8,5,6,9
    6,Olimassa,olimassa,1,8,4,8,9
    6,Shumi,shumi,6,5,8,4,9
    6,Krysta,krysta,7,5,8,1,9
    #Livello_7:
    7,Propagetor,propagetor,8,4,4,8,9
    7,Gyaptus,gyaptus,8,8,4,4,9
    7,Tryhthos,tryhthos,8,5,2,8,0
    7,Galganthur,galganthur,5,6,6,8,9
    7,Mobile_Type_8b,mobiletype8b,8,6,7,3,9
    7,Andro,andro,8,3,5,8,9
    7,Tiamath,tiamath,8,8,5,4,9
    7,BGH251F2,bgh251f2,5,7,8,5,9
    7,Ultra_Might,ultramight,6,8,4,7,9
    7,Catoplepas,catoplepas,1,8,7,7,9
    7,Ultima_Weapon,ultimaweapon,7,7,2,8,9
    #Livello_8:
    8,Debuchocobo,debuchocobo,4,4,8,9,9
    8,Angelo,angelo,9,6,7,3,9
    8,Gilgamesh,gilgamesh,3,7,9,6,9
    8,Komoguri,komoguri,9,3,9,2,9
    8,Kochocobo,kochocobo,9,4,8,4,9
    8,Quetzal,quetzal,2,9,9,4,0
    8,Shiva,shiva,6,7,4,9,2
    8,Ifrit,ifrit,9,6,2,8,5
    8,Siren,siren,8,9,6,2,9
    8,Seclet,seclet,5,1,9,9,1
    8,Minotaurus,minotaurus,9,5,2,9,1
    #Livello_9:
    9,Carbuncle,carbuncle,8,4,A,4,9
    9,Diablos,diablos,5,A,8,3,9
    9,Leviathan,leviathan,7,A,1,7,6
    9,Odino,odino,8,A,3,5,9
    9,Pandemon,pandemon,A,1,7,7,3
    9,Cerberus,cerberus,7,4,6,A,9
    9,Alexander,alexander,9,A,4,2,7
    9,Fenice,fenice,7,2,7,A,5
    9,Bahamut,bahamut,A,8,2,6,9
    9,Kharonte,kharonte,3,1,A,A,4
    9,Eden,eden,4,4,9,A,9
    #Livello_10:
    0,Ward,ward,A,7,2,8,9
    0,Kiros,kiros,5,7,6,A,9
    0,Laguna,laguna,5,A,3,9,9
    0,Selphie,selphie,A,8,6,4,9
    0,Quistis,quistis,9,6,A,2,9
    0,Irvine,irvine,2,6,9,A,9
    0,Zell,zell,8,5,A,6,9
    0,Rinoa,rinoa,4,A,2,A,9
    0,Edea,edea,A,A,3,3,9
    0,Seifer,seifer,6,9,A,4,9
    0,Squall,squall,A,4,6,9,9
    vorrei che nella JLabel "1" esca scritto per esempio il primo nome della categoria "#Livello_1" quindi "Geezard".. nella JLabel alto il primo numer sempre dell'elenco "Livello_1" del primo nome quindi "1"..
    poi nella JLabel "2" esca scritto il primo nome della categoria "#Livello_2" quindi "Grat".. ecc ecc come posso fare??

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2010
    Messaggi
    86
    up

  3. #3
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: gestione degli archivi

    Originariamente inviato da croccio
    vorrei che nella JLabel "1" esca scritto per esempio il primo nome della categoria "#Livello_1" quindi "Geezard".. nella JLabel alto il primo numer sempre dell'elenco "Livello_1" del primo nome quindi "1"..
    poi nella JLabel "2" esca scritto il primo nome della categoria "#Livello_2" quindi "Grat".. ecc ecc come posso fare??
    Prima di partire "in quarta" col dire "quel dato nel file deve andare nel componente xyz" cerca di prima di valutare come "modellare" quei dati con delle classi.

    Ogni riga es. "1,Gyala,gyala,2,1,4,4,0" rappresenta un "record" di informazione? Descrivilo allora con una classe con gli appropriati campi. E un "livello" è un insieme di N di questi record? Allora descrivilo con una classe che contiene la descrizione del livello (se necessario) e un insieme di oggetti di quell'altro record.
    E tutto quanto il file rappresenza un "mazzo"? Allora descrivilo con una classe che contiene i campi per il nome, descrizione e un insieme di oggetti dei livelli.

    E quindi farai una classe es. LettoreMazzo che apre il file, legge (e analizza/separa/interpreta i dati) e fornisce un oggetto es. (non c'è bisogno di molta fantasia..) Mazzo.

    Insomma, cerca di vedere le cose prima dal punto di vista degli oggetti e delle relazioni tra di loro.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2010
    Messaggi
    86
    quindi, se non ho capito male, creo prima una superclasse "Mazzo" con gli attributi di nome, elemento, valore1,valore2,valore3,valore4.. poi delle sotto classi "liv1" liv2".."livN" e poi altre sottoclassi ke sarebbero ogni singola carta??

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2010
    Messaggi
    86

    Re: Re: gestione degli archivi

    Originariamente inviato da andbin

    E quindi farai una classe es. LettoreMazzo che apre il file, legge (e analizza/separa/interpreta i dati) e fornisce un oggetto es. (non c'è bisogno di molta fantasia..) Mazzo.
    come faccio ke apre il file,legge (e analizza/separa/intrpreta i dati)? non so come farlo o meglio qual'è la funzione? come separo i dati?

  6. #6
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da croccio
    una superclasse "Mazzo" con gli attributi di nome, elemento, valore1,valore2,valore3,valore4.. poi delle sotto classi "liv1" liv2".."livN"
    No, non sottoclassi!!! Un livello non è-un mazzo! (come un motore non è-una auto .... la auto ha un motore e semmai la auto è-un veicolo).

    - Un mazzo ha un nome, una descrizione e N livelli
    - Un livello ha N record di dati (eventualmente un nome se vuoi dargli quello dopo il # es. "Livello_2")
    - Un record di dati ha N informazioni (qui non ho idea di cosa siano però ...)

    Molto abbozzato:

    codice:
    public class Mazzo {
        private String nome;
        private String descrizione;
        private List<Livello> listaLivelli;
    
        // costruttore/i, metodi getter/setter e altro
    }
    
    public class Livello {
        private String nome;
        private List<DatiRecordLivello> listaDatiRecordLivello;
    
        // costruttore/i, metodi getter/setter e altro
    }
    
    public class DatiRecordLivello {
        // ... qui i dati ma io non so cosa sono/rappresentano ...
    }
    Le classi non sono in relazione a livello di ereditarietà (nessuna estende l'altra) ... ma sono in relazione a livello strutturale nel senso che un oggetto conterrà poi riferimenti ad altri oggetti.

    Originariamente inviato da croccio
    come faccio ke apre il file,legge (e analizza/separa/intrpreta i dati)? non so come farlo o meglio qual'è la funzione? come separo i dati?
    Visto che è un file di testo organizzato "a righe", allora usa innanzitutto BufferedReader che ha readLine().

    Devi avere anche chiaro quale è il formato generale possibile/accettabile del file. È possibile che ci siano righe vuote? È possibile che ci siano commenti ad esempio righe che iniziano con # (a parte #Livello_X: che è un marcatore che devi considerare il resto #.... potrebbe essere trattato come commento). È possibile che nelle righe di dati ci siano spazi oltre che le virgole, es. 2 virgola spazio 3 virgola .....?

    Man mano che leggi le righe devi tenerti informazioni per tenere traccia di dove sei arrivato e cosa ti aspetti man mano. Quando hai una riga di dati come:

    1,Blinura,blinura,2,3,1,5,9

    Puoi spezzarla ad esempio con split() di String quindi per i valori numerici dovresti parsarli con Integer.parseInt, sapendo tu ovviamente quali di quei valori sono numerici.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2010
    Messaggi
    86
    codice:
    	public class Mazzo {
    	    private String nome;
    	    private String descrizione;
    	    private List<Livello> listaLivelli;
    
    	    Mazzo(String no, String des, List<Livello> ll)
    	    {
    	    	nome=no;
    	    	descrizione=des;
    	    	listaLivelli=ll;
    	    }
    	}
    
    	public class Livello {
    	    private String nome;
    	    private List<DatiRecordLivello> listaDatiRecordLivello;
    
    	    Livello(String no, List<DatiRecordLivello> ldrl)
    	    {
    	    	nome=no;
    	    	listaDatiRecordLivello=ldrl;
    	    }
    	}
    
    	public class DatiRecordLivello {
    	    private int livello;
    	    private String nome;
    	    private String descrizione;
    	    private int alto;
    	    private int destra;
    	    private int basso;
    	    private int sinistra;
    	    private int elemento;
    	    DatiRecordLivello(int liv, String no, String des, int su, int dest, int giu, int sin, int el)
    	    {
    	    	livello=liv;
    	    	nome=no;
    	    	descrizione=des;
    	    	alto=su;
    	    	destra=dest;
    	    	basso=giu;
    	    	sinistra=sin;
    	    	elemento=el;
    	    }
    	}
    credo di aver settto bene i metodi costruttorri, però mi da l'errore alle varie variabili dicendo che nn sono mai usate

  8. #8
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da croccio
    credo di aver settto bene i metodi costruttorri
    I costruttori mettili public. Inoltre non inventarti nomi per i parametri, la convenzione tipica è di mettere i parametri con gli stessi nomi dei campi e poi usare this per riferirsi al campo (quando in costruttori/metodi il nome del parametro "nasconde" il campo).

    codice:
    public Mazzo(String nome, ........) {
        this.nome = nome;
        .....
    Originariamente inviato da croccio
    però mi da l'errore alle varie variabili dicendo che nn sono mai usate
    Il tuo IDE è "pignolo" ... ignoralo e vai avanti con il resto (metodi getter/setter e il resto per la gestione della lettura) perché se stai ancora su queste questioni ..... la vedo per te dura ....
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  9. #9
    Utente di HTML.it
    Registrato dal
    May 2010
    Messaggi
    86
    ma getter e setter in ke senso?? il return??

  10. #10
    Utente di HTML.it
    Registrato dal
    May 2010
    Messaggi
    86
    edit:risolto problema

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.