Как я могу удалить пробелы, символы табуляции, символы новой строки между ">" and "<"
, ">" and "</"
, а также пробел между <wiretype />
из строки ниже, сохраненной в текстовом файле с использованием C #?
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetReport xmlns="http://tempuri.org/">
<RequestContext xmlns="">
<userid>reds</userid><fcnumber>1</fcnumber><accountaccess /><wiretype /><currency /><accountheader>All</accountheader><clientname>Begum Noor</clientname><requestid>9999</requestid><ntid>reds</ntid>
</RequestContext>
<ReportParams>xyz</ReportParams>
</GetReport>
</soap:Body>
</soap:Envelope>
Я попробовал следующее, но он не удалил все пробелы:
static void Main(string[] args)
{
string filename = args[0];
StringBuilder result = new StringBuilder();
if (System.IO.File.Exists(filename))
{
using (StreamReader streamReader = new StreamReader(filename))
{
String line;
Regex r = new Regex(@">\s+<");
while ((line = streamReader.ReadLine()) != null)
{
string newLine = r.Replace(line, @"><");
result.Append(newLine);
}
}
}
Console.WriteLine(result);
Console.ReadLine();
using (FileStream fileStream = new FileStream(filename, FileMode.OpenOrCreate))
{
StreamWriter streamWriter = new StreamWriter(fileStream);
streamWriter.Write(result);
streamWriter.Close();
fileStream.Close();
}
}