Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di lnessuno
    Registrato dal
    Feb 2002
    Messaggi
    2,732

    Visual basic (gambas), salvare una stringa in una data posizione di un file...

    dunque... premesso che non sto usando visual basic ma un programma che una una sintassi molto simile (gambas, usa la sintassi del basic). io ho un file xml in cui devo scrivere con un programmino che sto facendo... il problema è che devo fargli scrivere la stringa in una certa posizione, ovvero dopo la riga che contiene il tag <diario>; per ora ho questo codice:

    codice:
    DIM riga AS String
    DIM xml AS File
    
      OPEN "prova.xml" FOR READ WRITE AS #xml
      
      WHILE NOT Eof(xml)
        LINE INPUT #xml, riga
        IF riga = "<diario>" THEN
          LINE INPUT #xml, riga
          WRITE #xml, Chr$(13) & ME.TxtTraduzione.Text & Chr$(13)
        END IF
      WEND
      
      CLOSE #xml
    in questo modo, secondo la logica (mia ) dovrebbe andare fino alla linea che contiene <diario>, saltare alla riga successiva, lasciare una riga vuota (chr$(13)), scrivere il contenuto di ME.TxtTraduzione.Text e lasciare un'altra riga vuota...

    ma non è così mi cancella dei pezzi del testo dopo, non capisco perchè...

  2. #2
    Utente di HTML.it L'avatar di lnessuno
    Registrato dal
    Feb 2002
    Messaggi
    2,732
    ecco, praticamente cerca di mantenere invariata la dimensione del file... quindi per scrivere i caratteri nuovi mi "mangia" quelli che c'erano prima.

  3. #3
    Utente di HTML.it L'avatar di lnessuno
    Registrato dal
    Feb 2002
    Messaggi
    2,732
    modificato un pò il codice...


    codice:
    DIM riga AS String
    DIM xml AS File
    DIM trovato AS Boolean
    
      OPEN "/home/lele/sito/Blog/prova.xml" FOR READ WRITE AS #xml
      
      trovato = FALSE
      WHILE NOT Eof(xml) AND trovato <> TRUE
        LINE INPUT #xml, riga
        IF riga = "<diario>" THEN
          trovato = TRUE
        END IF
      WEND
      IF trovato = TRUE THEN
        LINE INPUT #xml, riga
        PRINT #xml, ME.TxtTraduzione.Text
      END IF
      
      CLOSE #xml
    ma non va lo stesso, stesso errore

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 © 2026 vBulletin Solutions, Inc. All rights reserved.