Erreur Parsing xml à cause de l'entete
Bonjour,
Je recupere un fichier xml à partir d'un web service
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| <?xml version="1.0" encoding="utf-16"?>
<CurrentWeather>
<Location>Lille, France (LFQQ) 50-34N 003-06E 52M</Location>
<Time>Feb 08, 2010 - 09:00 AM EST / 2010.02.08 1400 UTC</Time>
<Wind> from the NE (040 degrees) at 9 MPH (8 KT):0</Wind>
<Visibility> 2 mile(s):0</Visibility>
<SkyConditions> mostly cloudy</SkyConditions>
<Temperature> 39 F (4 C)</Temperature>
<DewPoint> 37 F (3 C)</DewPoint>
<RelativeHumidity> 93%</RelativeHumidity>
<Pressure> 29.74 in. Hg (1007 hPa)</Pressure>
<Status>Success</Status>
</CurrentWeather> |
J'essaie de le parcourir et d'afficher les elements:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| String DataDisplayed = null ;
StreamWriter srd = File.CreateText("WeatherData.xml");
DataDisplayed = Weather.GetWeather(sVille.ToLower() , sPays.ToLower());
srd.WriteLine(DataDisplayed);
srd.Close() ;
FileStream streamData = new FileStream("WeatherData.xml", FileMode.Open) ;
XmlTextReader readerD = new XmlTextReader(streamData);
readerD.WhitespaceHandling = WhitespaceHandling.None ;
// Parse the file and display each of the nodes.
while (readerD.Read())
{
if(readerD.Name == "Location")
richTextBoxWeather.Text = readerD.ReadString();
if(readerD.Name == "Time")
richTextBoxWeather.Text = readerD.ReadString();
if(readerD.Name == "Wind")
richTextBoxWeather.Text = readerD.ReadString();
if(readerD.Name == "Visibility")
richTextBoxWeather.Text = readerD.ReadString();
if(readerD.Name == "Temperature")
richTextBoxWeather.Text = readerD.ReadString();
}
readerD.Close(); |
(je ne suis pas sur non plus que c'est la meilleur façon de faire)
mais au moment de l'execution, j'ai une erreur qui pointe sur : while (readerD.Read())
et qui m'indique
Citation:
Marque d'ordre d'octet Unicode manquante. Impossible de basculer en Unicode
Je pense que c'est la premiere ligne du fichier XML qui pose le probleme, comment puis je alors la bypasser ou bien ne pas l'ecrire dans le fichier dés le debut ?
Merci.