xamm ha scritto:
Dovrei leggere un file txt il cui nome ogni volta cambia ma è sempre nella stessa directory.
Anche presumendo che il nome cambi, ci sarà una regola con la quale è possibile stabilire con precisione qual è il nome del file di testo da leggere, giusto? Se sì, qual è questa regola?
xamm ha scritto:
Dovrei leggere tutte le righe del file txt ed intercettare gli eventuali record che sono più lunghi o più corti dei 67 caratteri di default.
Quando intercetti la condizione, cosa devi fare in seguito? Cioè, come devi fattivamente gestire l'occorrenza di un record che non corrisponde alle specifiche? Scrivere qualcosa in output? o su un file?
xamm ha scritto:
Mi sembra di capire che si parta dalla lettura del file, ma poi come gli dico di controllare se tutti i record sono lunghi 67 ?? Con Len del metodo string ?
Direi che usare la proprietà
Length della stringa sia la strada più semplice per determinare la lunghezza in numero di caratteri.
Per il resto, tutto dipende dalla necessità o meno di gestire casi particolari (es. spazi iniziali e finali da ignorare e così via).
xamm ha scritto:
FileReader = textfile.OpenText(...qui dovremi mettere il file txt, ma variando sempre il nome non saprei come fare)
Come predetto, ci deve essere un criterio per capire qual è il nome del file di testo da aprire.
Potrebbe essere l'unico presente nella directory, o l'unico con una certa estensione... qui è il richiedente che deve definire appunto il requisito, la specifica che rende preciso questo criterio.
Mi sembra comunque che tu stia affrontando troppi problemi in una volta: partiamo dalla selezione del file, innanzitutto, poi dalla sua apertura/chiusura, infine parliamo della lettura riga per riga e del controllo delle singole linee.
Fai una cosa alla volta, verificando che sia corretta, e poi si passa oltre quando assodato che tutto è funzionante.
Ciao!