我有一个string
实际上是一个XML。
我正在使用以格式化方式向我提供string
的过程,但我也想让它在richTextBox
内着色。我现在使用的程序是
private void beautify()
{
// richTextBox1.HideSelection = false;
richTextBox1.BackColor = Color.White;
richTextBox1.SelectAll();
richTextBox1.SelectionColor = Color.IndianRed;
int firstLine = richTextBox1.Text.IndexOf('\n', 1);
HighlightText(richTextBox1, "<", Color.Blue,true);
HighlightText(richTextBox1, ">", Color.Blue,true);
HighlightText(richTextBox1, "=", Color.Blue,true);
HighlightText(richTextBox1, "\"", Color.Blue,true);
HighlightText(richTextBox1, "</", Color.Blue,true);
HighlightText(richTextBox1, "=>", Color.Blue, true);
string[] str = richTextBox1.Text.Split('\u0022');
for (int i = 0; i < str.Length; i++)
{
if(i%2 != 0)
HighlightText(richTextBox1, str[i], Color.Black,false);
}
richTextBox1.Select(0, firstLine);
richTextBox1.SelectionColor = Color.Blue;
}
它主要适用于一些错误,但我最大的问题是,对于非常大的XML,它需要花费太长时间。我想知道是否有一个库或其他东西可以更快地处理这个问题。