Molto spesso abbiamo la necessità di parsare un file per analizzarne il contenuto. Altrettanto spesso questi file hanno una riga per ogni record e le colonne sono o a lunghezza fissa o separate da un carattere (per esempio, i file csv usano una virgola per separare le colonne). In questi possiamo ottenere i singoli record splittando il contenuto del file in base al carattere di "a capo" e poi per ogni riga splittare in base al carattere che separa le colonne.
Grazie alla clausola Let di Linq possiamo facilmente raggiungere lo scopo come mostrato nel seguente esempio.
var rows = fileContent.Split(new[] {Environment.NewLine}, StringSplitOptions.None); var rows = from r in rows let columns = r.Split(",") select new { Id = columns[0], FirstName = columns[1], LastName = columns[2] };
La prima riga genera le righe, mentre l'istruzione Linq prima esegue lo split per generare le colonne e poi crea un oggetto anonimo con esse.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Recuperare gli audit log in Azure DevOps
Combinare Container Queries e Media Queries
Gestione ciclo di vita in .NET Aspire
Utilizzare EF.Constant per evitare la parametrizzazione di query SQL
Selettore CSS :has() e i suoi casi d'uso avanzati
Configurare lo startup di applicazioni server e client con .NET Aspire
Utilizzare DeepSeek R1 con Azure AI
Creare una libreria CSS universale: Cards
Utilizzare l nesting nativo dei CSS
Anonimizzare i dati sensibili nei log di Azure Front Door
Scrivere selettori CSS più semplici ed efficienti con :is()
Effettuare il log delle chiamate a function di GPT in ASP.NET Web API
I più letti di oggi
- Usare i settings di serializzazione/deserializzazione di System.Text.Json di ASP.NET all'interno di un'applicazione non web
- .NET Conference Italia 2025 - Milano
- The Agentic Day - Milano
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Documentare i servizi REST con Swagger e OpenAPI con .NET 9
- Tutorial LINQ
- Gestione ciclo di vita in .NET Aspire