private string HandleWhiteSpace (string str)
{
if (reader.XmlSpace == XmlSpace.Preserve)
return str;
StringBuilder builder = new StringBuilder (str.Length);
for (int i = 0; i < str.Length; i++) {
bool ws = false;
if (Char.IsWhiteSpace (str [i])) {
do {
i++;
} while (i < str.Length -1 && Char.IsWhiteSpace (str [i]));
}
if (ws)
builder.Append (' ');
else
builder.Append (str [i]);
}
return builder.ToString ();
}
}