Formattazione stringhe

martedì 04 novembre 2008 - 16.13

hydra Profilo | Junior Member

Salve a tutti, ho fatto alcune ricerche in giro ma non ho trovato nessun riferimento, quindi chiedo a voi.
Devo formattare delle stringhe, ma devo far decidere all'utente come formattarle, per questo pensavo di creare un campo in cui l'utente inserisce la struttura della stringa. Ad esempio, se io ho dei campi come codice, nome, dato1, dato2, dato3, voglio che l'utente possa decidere di formattare la stringa mettendo ad esempio nome, dato1, dato3, dato2, codice. Per fare questo pensavo di utilizzare il metodo string.format.

Quello che pensavo è appunto alla composizione della stringa, l'utente dovrebbe infatti inserire una stringa del tipo {0}, {1}, {2}, {3}, {4}, ma questo risulta scomodo per l'utente; vorrei invece se possibile fare in modo che l'utente possa sostituire i numeri con delle lettere, un po' come succede su certi programmi quando si può decidere come comporre il nome del file (mi viene in mente ad esempio la scelta del nome del file che si può fare rippando un cd con nero). Tutto questo perchè, penso io, se l'utente inserisce la stringa formattata con i numeri posso passarla così com'è allo string.format. Sapete per caso se c'è la possibilità di fare questa cosa anche con le lettere oppure se devo io a mano andare a editarmi la stringa per sostituire le lettere coi numeri? Oppure i numeri li sto dando io? Grazie mille.

llamanna Profilo | Junior Member

Perchè non usi string.Replace?

In questo modo i tuoi "segna posto" possono essere lettere, ma hai lo svantaggio di dover invocare il replace per ogni elemento da sostituire.






hydra Profilo | Junior Member

Si, era quello che pensavo, volevo sapere se era possibile appunto formattare una stringa con delle lettere invece usare un replace, anche perchè se i dati sono tanti diventa piuttosto logorante. In ogni caso, vorrei sapere un'altra cosa: quando io formatto da codice una stringa del tipo {0}\n{1}, tra il primo e il secondo argomento viene inserito un a capo, se io scrivo nel textbox {0}\n{1}, eseguendo la formattazione con gli argomenti non mi fa l'a capo ma mi scrive Arg0\nArg1. Sapete perchè? Esiste un modo per far mettere sempre all'utente gli a capo come vuole lui?

hydra Profilo | Junior Member

Mi sono accorto dopo che quando scrivo \n su un campo di immissione il c# lo acquisisce come \\n, quindi appunto mi stampa la sequenza di caratteri invece di mandare a capo.
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5