|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Jul 2008
Messaggi: 1426
|
[C#]elimare diverse righe in una string
Ciao,
ho una variabile di tipo string e a questa devo eliminare diverse righe (circa 200/250). Come posso fare? C'è una funzione apposta o mi creo io un ciclo? |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Jul 2008
Messaggi: 1426
|
niuno?
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Nov 2005
Messaggi: 2774
|
Dipende da in base a cosa certe righe devono essere eliminate.
|
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Jul 2008
Messaggi: 1426
|
dalla prima fino alla n
|
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3691
|
Prova cosi'
Codice:
var sr=new StringReader(original); for (int i = 0; i < 200;i++ ) sr.ReadLine(); var newText = sr.ReadToEnd(); sr.Close();
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto. E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test. |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Jul 2008
Messaggi: 1426
|
oggi provo, bella idea dovrebbe funzionare
![]() |
![]() |
![]() |
![]() |
#7 |
Member
Iscritto dal: Jul 2008
Messaggi: 237
|
String.Concat("\n", TUA_STRINGA.Split("\n").Skip(quante_righe_vuoi_saltare).ToArray()) potrebbe essere un modo. Al posto di Skip puoi addirittura usare Where se le righe da saltare non sono consecutive. Se invece sono consecutive ma non sai in partenza quante ne devi saltare puoi usare SkipWhile.
|
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Jul 2008
Messaggi: 1426
|
figata! provo questo
![]() |
![]() |
![]() |
![]() |
#9 | |
Senior Member
Iscritto dal: Jul 2008
Messaggi: 1426
|
problema!
codice: Codice:
string paginahtml = null; Uri url = new Uri((@"http://www.gracenote.com/music/search-adv.html?q=&qtrack=" + canzone).Replace(" ", "_")); System.Net.WebClient client = new System.Net.WebClient(); paginahtml = client.DownloadString(url); paginahtml = String.Concat("\n", paginahtml.Split('\n').Skip(240).ToArray()); FileStream fs = new FileStream(@"percorso\test.xml", FileMode.OpenOrCreate, FileAccess.Write, FileShare.ReadWrite); // create a stream writer StreamWriter sw = new StreamWriter(fs, System.Text.Encoding.ASCII); // write to file (buffer), where textbox1 is your text box sw.Write(paginahtml); // flush buffer (so the text really goes into the file) sw.Flush (); // close stream writer and file sw.Close (); fs.Close (); Quote:
|
|
![]() |
![]() |
![]() |
#10 |
Senior Member
Iscritto dal: Dec 2003
Messaggi: 4906
|
Devi usare string.Join, non string.Concat.
string.Concat non ha overload per specificare il separatore. |
![]() |
![]() |
![]() |
#11 |
Senior Member
Iscritto dal: Jul 2008
Messaggi: 1426
|
si ora va!
e per camcellare da una riga a un'altra? cioè con questo elimino righe dall'inizio ma per eliminare da un riga x? |
![]() |
![]() |
![]() |
#12 |
Senior Member
Iscritto dal: Jul 2008
Messaggi: 1426
|
credo di avere un'idea se va poi la posto così altri niubbi come me potranno usufruirne
![]() |
![]() |
![]() |
![]() |
#13 |
Senior Member
Iscritto dal: Jul 2008
Messaggi: 1426
|
per eliminare le righe dalla 244 in poi, anche se non srà molto pulito ho fatto così:
Codice:
paginahtml = paginahtml.Replace(paginahtml.Replace(String.Join("\n", paginahtml.Split('\n').Skip(244).ToArray()), ""), ""); |
![]() |
![]() |
![]() |
#14 |
Senior Member
Iscritto dal: May 2001
Messaggi: 12814
|
Ricorda: la pulizia del codice è tutto
![]() |
![]() |
![]() |
![]() |
#15 |
Senior Member
Iscritto dal: Jul 2008
Messaggi: 1426
|
ma mi sembrava meglio questo che un clico for o while.. altre idee con le mie conoscenze non ne ho
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 21:43.