Buongiorno!
>ho provato anche a caricarlo linea per linea , ma non va bene
>stranamente mi divide il testo html
>....
>....
Per evitare ogni genere di problema potresti pensare di effettuare un replace del carattere ";" con un carattere meno usuale, per esempio "§", il tutto ovviamente a runtime e riconoscendo se il ";" è un delimitatore sql o html.
Ti posto un piccolo blocco di codice, che per abitudine ho scritto in C# :
private void retrieveSqlStatement_Click(object sender, EventArgs e)
{
StreamReader reader = new StreamReader(@"C:\oscommerce.ila");
string currentLine = string.Empty;
string newGeneratedText = string.Empty;
char specialSplitter = '§';
ArrayList sqlStatement = new ArrayList();
while (reader.EndOfStream == false)
{
currentLine = reader.ReadLine();
if ((currentLine != ""))
{
if (currentLine[currentLine.Length - 1] == ';')
{
currentLine = currentLine.Remove(currentLine.Length - 1);
currentLine += specialSplitter;
newGeneratedText += currentLine.Replace(';', specialSplitter);
}
else { newGeneratedText += currentLine; }
}
}
string[] splittedSQL = newGeneratedText.Split(specialSplitter);
}
In pratica il codice non fa altro che caricare riga per riga il file di testo, la riga corrente viene analizzata per capire se ";" è presente a fine riga e quindi è un delimitatore di uno statement SQL.
Se cosi fosse rimpiazza ";" con "§" e passa ad analizzare il resto del testo.
Tutto viene salvato in una variabile temporanea di nome newGeneratedText che poi viene splittata in splittedSQL.
>ciao
Ciao ;)
------------------------------------------
Ignazio Catanzaro
http://blogs.dotnethell.it/swdev/