Lettura file
  • In diretta da GamesVillage.it
    • News
    • -
    • In Evidenza
    • -
    • Recensioni
    • -
    • RetroGaming
    • -
    • Anteprime
    • -
    • Video
    • -
    • Cinema

Visualizzazione risultati da 1 a 1 di 1

Discussione: Lettura file

Cambio titolo
  1. #1
    Puppppppaaaaaaaaaaa L'avatar di Revan1985
    Registrato il
    01-06
    Località
    Solbiate Olona
    Messaggi
    1.655

    Lettura file

    allora, per dominium sto creando una struttura alquanto particolare.
    Ora, mi serve sapere come, leggendo con un ifstream, posso leggere i numeri
    Questo è il codice che uso :

    Codice:
    bool CMap::Initialize()
    {    
        int countline = 0;
        bool eos = false;
        std::ifstream iS(nameFile.c_str(),std::ios_base::in);
        while(!iS.eof() && !eos)
        {
            iS.getline(this->buffer, BUFSIZE);
            if(this->buffer[0] != ' ' && this->buffer[0] != '#')
            {
                if(this->buffer[0] == 'e' && this->buffer[1] == 'o' && this->buffer[2] == 's')
                {
                    eos = true;
                    break;
                }
                if(strlen(this->buffer) > 1)
                {
                    for(int i = 0; i < (int)strlen(this->buffer) ; i++)
                    {
                        if(this->buffer[i] >= '0' && this->buffer[i] <= '9') 
                        {
                            countline += (buffer[i]-'0')*(int)pow((double)10,(double)(strlen(this->buffer)-i));
                        }
                    }
                }
                else
                {
                    countline = (int)(buffer[0]-'0');
                }
            }
        }
        std::cout << countline ;
    
        iS.close();
        return true;
    }
    la struttura del file invece è questa :

    Codice:
    # File structure:
    # mapN.bmp ->    Indica il file da aprire   [heightmap]    [potenza di 2 : max 512x512]
    # mapN.bmp ->    Indica la texture dell'heightmap   [potenza di 2 : max 2048x2048]
    # mapN.txt ->    Indica la struttura della mappa [buchi et similia] [grandezza mappa] [32x32 ecc]
    # i file devono trovarsi in :
    # i 2 bmp nella cartella GFX/Map
    # il file .txt nella cartella Struct/Map
    
    3
    eos
    
    #map1
    1
    map1.bmp
    map2.bmp
    map3.txt
    /1
    
    #map2
    2
    map2.bmp
    map2.bmp
    map2.txt
    /2
    
    #map3
    3
    map3.bmp
    map3.bmp
    map3.txt
    /3
    allora, perchè, quando leggo il primo numero [13], mi viene 62 ?

    sapreste fare pià semplificati il file .txt e il codice?
    grazie mille

    edit: non so perchè, ma credo che la colpa sia di un int all'inizio della conversione per 2 cifre.
    ora provo
    edit2: no, cosi va a 82
    Ultima modifica di Revan1985; 19-06-2007 alle 21:46:47
    È stato detto che la democrazia è la peggior forma di governo, eccezion fatta per tutte quelle altre forme che si sono sperimentate finora.


Regole di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •