Сообщение Re[2]: трассер для хмл от 24.05.2019 22:20
Изменено 24.05.2019 22:22 gok
Re[2]: трассер для хмл
здорово!
А может Regex создать лист из *.xml или подняться выше на этаж для ../text.xml. Или все же ручками надо?
static void TraceXml(int level, string inputUri)
{
level++;
if (Path.GetExtension(inputUri) != ".xml")
{
Console.WriteLine(string.Join("", Enumerable.Repeat(' ', level)) + string.Format("File {0} is not XML.", inputUri));
return;
}
// learn to read ../test.xml, *.xml
if (!File.Exists(inputUri))
{
Console.WriteLine(string.Join("", Enumerable.Repeat(' ', level)) + string.Format("File {0} not exists yet.", inputUri));
return;
}
Console.WriteLine(string.Join("", Enumerable.Repeat(' ', level)) + inputUri);
using (var xr = XmlReader.Create(inputUri))
{
FindPaths(xr, path =>
{
var fpath = ExpandPath(path, EnvExpander);
TraceXml(level, fpath);
});
}
}
static void Main(string[] args)
{
string inputUri = Environment.CurrentDirectory + "/Support/bcadtestapp.xml";
int level = 0;
TraceXml(level, inputUri);
}
А может Regex создать лист из *.xml или подняться выше на этаж для ../text.xml. Или все же ручками надо?
static void TraceXml(int level, string inputUri)
{
level++;
if (Path.GetExtension(inputUri) != ".xml")
{
Console.WriteLine(string.Join("", Enumerable.Repeat(' ', level)) + string.Format("File {0} is not XML.", inputUri));
return;
}
// learn to read ../test.xml, *.xml
if (!File.Exists(inputUri))
{
Console.WriteLine(string.Join("", Enumerable.Repeat(' ', level)) + string.Format("File {0} not exists yet.", inputUri));
return;
}
Console.WriteLine(string.Join("", Enumerable.Repeat(' ', level)) + inputUri);
using (var xr = XmlReader.Create(inputUri))
{
FindPaths(xr, path =>
{
var fpath = ExpandPath(path, EnvExpander);
TraceXml(level, fpath);
});
}
}
static void Main(string[] args)
{
string inputUri = Environment.CurrentDirectory + "/Support/bcadtestapp.xml";
int level = 0;
TraceXml(level, inputUri);
}
Re[2]: трассер для хмл
здорово!
А может Regex создать лист из *.xml или подняться выше на этаж для ../text.xml. Или все же ручками надо?
А может Regex создать лист из *.xml или подняться выше на этаж для ../text.xml. Или все же ручками надо?
static void TraceXml(int level, string inputUri)
{
level++;
if (Path.GetExtension(inputUri) != ".xml")
{
Console.WriteLine(string.Join("", Enumerable.Repeat(' ', level)) + string.Format("File {0} is not XML.", inputUri));
return;
}
// learn to read ../test.xml, *.xml
if (!File.Exists(inputUri))
{
Console.WriteLine(string.Join("", Enumerable.Repeat(' ', level)) + string.Format("File {0} not exists yet.", inputUri));
return;
}
Console.WriteLine(string.Join("", Enumerable.Repeat(' ', level)) + inputUri);
using (var xr = XmlReader.Create(inputUri))
{
FindPaths(xr, path =>
{
var fpath = ExpandPath(path, EnvExpander);
TraceXml(level, fpath);
});
}
}
static void Main(string[] args)
{
string inputUri = Environment.CurrentDirectory + "/Support/bcadtestapp.xml";
int level = 0;
TraceXml(level, inputUri);
}