Salve ragazzi, la mia intenzione è quella di leggere un file di testo , inserire le righe su un array, fare le modifiche all'array e rinfilare il tutto nel file.
Sto provando questo codice:
Non da errore, il file di testo originale è in questo formato :codice:strFileName = "C:\Users\alessandro.cassis\Desktop\export.xml" Dim objFSO, strTextFile, strData, strLine,arrLines,cont Set objFSO = CreateObject("Scripting.FileSystemObject") strData = objFSO.OpenTextFile(strFileName,ForReading).ReadAll arrLines = Split(strData,vbCrLf) Dim i i = 0 Dim app,leng,appoggio For i = 0 To UBound(arrLines) - 1 If InStr(arrLines(i),"<Area_Specialistica") <> 0 Then 'al suo interno avviene la cancellazione di quella riga arrLines(i) = Replace(arrLines(i), "<Area_Specialistica nil=" & chr(34) & "true" & chr(34) & "/>", "") End If If InStr(arrLines(i),"info") > 0 Then 'al suo interno elimino l'attributo info del tag Person leng= InStr(arrLines(i),"info") appoggio = Left(arrLines(i),leng-1) arrLines(i)= Replace(arrLines(i), arrLines(i), appoggio & " >") End If Next strLine = Join(arrLines) Set objFile = objFSO.OpenTextFile(strFileName, ForWriting) objFile.WriteLine strLine Set objFSO = Nothing
Ma eseguendo il codice invece di editare quelle due righe con il replace, mi fa uscire fuori un file così :codice:<Persone> <Person id="numeroid" info="QUALCOSA QUALCOSA"> <E-mail>email@email.it</E-mail> <Nome>NOME</Nome> <Cognome>COGNOME</Cognome> <Stato>Attivo/Disattivo</Stato> <Tipo_Dipendente>POSIZIONE</Tipo_Dipendente> <Codice_Fiscale>CODI</Codice_Fiscale> <Telefono>numero di telefono</Telefono> <Area_Specialistica nil="true"/> <Valido_dal>DATA INIZIO</Valido_dal> <Valido_fino_al>DATA FINE</Valido_fino_al> <vip>vero/false</vip> </Person> <Person id="numeroid" info="QUALCOSA QUALCOSA"> <E-mail>email@email.it</E-mail> <Nome>NOME</Nome> <Cognome>COGNOME</Cognome> <Stato>Attivo/Disattivo</Stato> <Tipo_Dipendente>POSIZIONE</Tipo_Dipendente> <Codice_Fiscale>CODI</Codice_Fiscale> <Telefono>numero di telefono</Telefono> <Area_Specialistica nil="true"/> <Valido_dal>DATA INIZIO</Valido_dal> <Valido_fino_al>DATA FINE</Valido_fino_al> <vip>vero/false</vip> </Person> </Persone>
Quindi immagino che invece di editare solamente quell'elemento dell'array lo edita tutto..codice:<Persone> <Person id="13876" >
Dove sbaglio ??
GRAZIE

Rispondi quotando