Из БД достаю информацию типа byte[], преобразовываю в string. В результате получаю длинную строку с xml данными:
<DEV BC="???"><TEST User="??" Name="???" Time="???" Res="???"><STEP Name="???" Res="???"><TITLE>... и т.д.
Как можно разбить это в нормальное представление?
<DEV BC="???">
<TEST User="??" Name="???" Time="???" Res="???">
<STEP Name="???" Res="???">
<TITLE>... и т.д.
Был вариант с использованием Replace:
richTextBox2.Text = Regex.Replace(Encoding.UTF8.GetString((byte[])reader["AnsData"]), "</", "\r\n$&", RegexOptions.IgnoreCase);
richTextBox2.Text = Regex.Replace(richTextBox2.Text, ">", "$&\r\n", RegexOptions.IgnoreCase);
Но это очень тупо и результат совсем не тот, который хотелось бы иметь.
Если у вас хранится валидный XML, то загрузите его в XDocument:
var xdoc = XDocument.Parse(text);
и воспользуйтесь его методом ToString() без параметров (по умолчанию XML как раз выводится в человекопонятном виде):
richTextBox2.Text = xdoc.ToString();
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости