Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. eliminare riga in un file di testo
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • A
      alessiofbt Bannato User Attivo • ultima modifica di

      eliminare riga in un file di testo

      Ho un file.dat con all'interno:

      record1</>table2</>table3</>
      record2</>table2</>table3</>
      record3</>table2</>table3</>

      quindi tutti divisi da </> e ogni record in n/r cioè accapo

      come faccio ad eliminare una riga di queste per esempio record2 e tutta senza lasciare spazio poi? :mmm:

      ciao 😉

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • S
        senamion User Attivo • ultima modifica di

        Devi riscriverlo completamente.
        Se non è molto grosso puoi leggerlo con file()
        A questo punto hai un array di righe, togli la riga che non ti interessa con unset() o array_splice() e riscrivi il file di botto.

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • A
          alessiofbt Bannato User Attivo • ultima modifica di

          @Senamion said:

          Devi riscriverlo completamente.
          Se non è molto grosso puoi leggerlo con file()
          A questo punto hai un array di righe, togli la riga che non ti interessa con unset() o array_splice() e riscrivi il file di botto.

          esempio?

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • S
            senamion User Attivo • ultima modifica di

            Fatto al volo, potrebbe non essere tutto corretto.

            
            $righe = file("testo.txt");
             
            foreach ($righe AS $key => $riga)
              {
              list($a, $b, $c) = explode("</>", $riga);
              if ($a == "record2")
                unset($righe[$a]);
              }
            $fp = fopen("testo.txt", "w+");
            foreach ($righe AS $key => $riga)
               fputs($fp, $riga);
            fclose($fp);
            
            
            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • A
              alessiofbt Bannato User Attivo • ultima modifica di

              @Senamion said:

              Fatto al volo, potrebbe non essere tutto corretto.

              >
              $righe = file("testo.txt");
               
              foreach ($righe AS $key => $riga)
                {
                list($a, $b, $c) = explode("</>", $riga);
                if ($a == "record2")
                  unset($righe[$a]);
                }
              $fp = fopen("testo.txt", "w+");
              foreach ($righe AS $key => $riga)
                 fputs($fp, $riga);
              fclose($fp);
              
              >```
              
              
              non funziona :(
              
              $riga che cos'è?
              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • S
                senamion User Attivo • ultima modifica di

                Prova così.

                
                $righe = file("testo.txt");
                 
                foreach ($righe AS $key => $riga)
                  {
                  list($a, $b, $c) = explode("</>", $riga);
                  if ($a == "record2")
                    unset($righe[$**key**]);
                  }
                $fp = fopen("testo.txt", "w+");
                foreach ($righe AS $key => $riga)
                   fputs($fp, $riga);
                fclose($fp);
                
                
                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • A
                  alessiofbt Bannato User Attivo • ultima modifica di

                  @Senamion said:

                  Prova così.

                  
                  $righe = file("testo.txt");
                  
                  foreach ($righe AS $key => $riga)
                   {
                   list($a, $b, $c) = explode("</>", $riga);
                   if ($a == "record2")
                     unset($righe[$**key**]);
                   }
                  $fp = fopen("testo.txt", "w+");
                  foreach ($righe AS $key => $riga)
                    fputs($fp, $riga);
                  fclose($fp);
                  
                  

                  ottimo grazie 😄

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • A
                    alessiofbt Bannato User Attivo • ultima modifica di

                    edit

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    Caricamento altri post
                    Rispondi
                    • Topic risposta
                    Effettua l'accesso per rispondere
                    • Da Vecchi a Nuovi
                    • Da Nuovi a Vecchi
                    • Più Voti