我正在读取一个带有一些html的XML(带有XmlDocument)。但有时候我得到一个格式错误的XML就是这个:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="refresh" content="0; url=<mocktag/>?<mock_tag=<moc
ktag/>&mocktag_2=<mockta
g/>
</head>
</html>
正如您所看到的,我的格式化标签很糟糕,因此导致我的程序崩溃。所以我的问题是能否正确读取xml字符串?也许将这个字符串转换成一行字符串?
答案 0 :(得分:2)
要将其格式化为一行,您可以使用Regex:
output = Regex.Replace(output, @"\s+", " ", RegexOptions.Multiline);
应删除每个空格并将每一行放入一个。