Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    sostituire 2 righe vuote file di testo con una sola riga

    ciao a tutti piccolo trip mentale:

    devo "normalizzare" un file di testo

    e per far cio devo spaziare i gruppi di informazioni con una sola riga vuota,in un file in cui le righe vuote a volte sono due a volte tre a volte una sola.

    il punto è che vorrei sostituire quei gruppi di righe vuote con una sola riga vuota e principalmente,sapere come si descrive una riga vuota,in asp.

    chi mi sa dire come fare?

    grazie
    Sono pronto a incontrare il Creatore. Se il Creatore sia pronto all'ardua prova di incontrare me, è un'altra questione.
    -- Winston Churchill

  2. #2
    fa' un esempio pratico, please

  3. #3
    contenuto del file di testo:
    nome
    cognome
    email

    nome
    cognome
    email


    nome
    cognome
    email


    nome
    cognome
    email

    nome
    cognome
    email

    --------------


    il succo è che tra un gruppo di informazionie e l'altro,a volte ci sono due righe vuote,altre volte una sola

    io vorrei far ciclare il file e sostituire con un metodo simile al replace vbscript, due righe con una sola.

    Sono pronto a incontrare il Creatore. Se il Creatore sia pronto all'ardua prova di incontrare me, è un'altra questione.
    -- Winston Churchill

  4. #4
    devi aprire il file, leggerlo e scriverlo in un altro. quando la riga è vuota, accendi un flag per cui scrivi una volta sola. se la riga è piena spegni il flag e scrivi sempre.

    inizia col ciclo di lettura e scrittura

  5. #5
    ah ok,operare per sostituire non è fattibile,ho capito

    grazie!
    Sono pronto a incontrare il Creatore. Se il Creatore sia pronto all'ardua prova di incontrare me, è un'altra questione.
    -- Winston Churchill

  6. #6
    Puoi anche fare una replace globale senza ciclare ogni riga:

    codice:
    Option Explicit
    
    CONST ForReading = 1
    CONST ForWriting = 2
    
    dim fso, ws, ts, path, strTemp
    
    path="C:\Documents and Settings\xxxxxx\Desktop\test.txt"
    
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set ts  = fso.OpenTextFile(path, ForReading) 
    
    If Not ts.AtEndOfStream Then
    	strTemp = Replace(ts.ReadAll, VbCrLf & VbCrLf, VbCrLf)
    	
    	Set ws  = fso.OpenTextFile(path, ForWriting, True)
    	ws.Write(strTemp)
    End If
    
    ws.close: set ws = nothing
    ts.close: set ts = nothing
    set fso = nothing
    Questo ovviamente se devi SEMPRE sostituire il doppio accapo con uno singolo. In caso tu debba sostituirne N consecutivi con uno solo puoi optare per una regular expression.

    xxx

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.