In talune situazioni potrebbe far comodo poter integrare in una pagina .aspx un file esterno magari un file html.
Per leggere e caricare il file esterno si può utilizzare la classe StreamReader il suo namespace può essere reso disponibile con ( using System.IO ). Una volta acquisito il contenuto lo si può riversare in un controllo HtmlHolder.Controls.Add(new LiteralControl( _htmlfile));
Un modo efficace per includere il file potrebbe essere pertanto il codice seguente:
StreamReader _sr; string _htmlfile; _sr = File.OpenText("G:\\WWW\\Downloadarea\\Cloud-Setup.htm"); _htmlfile = _sr.ReadToEnd(); sr.Close(); HtmlHolder.Controls.Add(new LiteralControl(html));
Quindi per processare il file si può far ricorso alle Regular Expression. La classe Regex è disponibile caricando il suo namespace con ( using System.Text.RegularExpressions ). Per eliminare la porzione di codice prima del tag <body> e dopo il tag </body>
Regex start = new Regex(@"[\s\S]*<body[^<]*>", RegexOptions.IgnoreCase); _htmlfile = start.Replace(_htmlfile,""); Regex end = new Regex(@" _htmlfile = end.Replace(_htmlfile, ""); htmlbody.Text = html;
Risorse:
- Classe StreamReader (System.IO)
- Regular Expressions in ASP.NET
- Include contents of an html page in an aspx page
- Regular expression
Annunci