public static void Run(string fileName) { var textSource = new StringTextSource(File.ReadAllText(fileName)); using (var textReader = textSource.CreateReader()) { using (var xmlReader = new XmlTextReader(textReader)) { Run(xmlReader); } } var doc = new AXmlParser().Parse(textSource); using (var xmlReader = doc.CreateReader()) { Run(xmlReader); } var xmlDocument = new XmlDocument(); xmlDocument.Load(doc.CreateReader()); xmlDocument.Save(Path.Combine(Program.TempPath, "savedXmlDocument.xml")); var xDocument = XDocument.Load(doc.CreateReader()); xDocument.Save(Path.Combine(Program.TempPath, "savedXDocument.xml")); }
public Import ParseImport(Import import) { Token.ThrowIfCancellationRequested(); var xmlParser = new XmlTreeParser(new XmlRootState()); ITextSource textSource; XDocument doc; try { textSource = new StringTextSource(File.ReadAllText(import.Filename)); (doc, _) = xmlParser.Parse(textSource.CreateReader()); } catch (Exception ex) when(IsNotCancellation(ex)) { LoggingService.LogError("Unhandled error parsing xml document", ex); return(import); } import.Document = new MSBuildDocument(import.Filename, false); import.Document.Build(doc, this); try { import.Document.Schema = SchemaProvider.GetSchema(import.Filename, import.Sdk); } catch (Exception ex) { LoggingService.LogError($"Error loading schema for '{import.Filename}'", ex); } return(import); }
public void CanGetTextFromReaderReturnedFromTextBufferCreateReader() { string expectedText = "abc"; ITextSource textBuffer = new StringTextSource("abc"); StringBuilder text = new StringBuilder(); using (TextReader reader = textBuffer.CreateReader()) { Assert.AreEqual(expectedText, reader.ReadToEnd()); } }
public static void Run(string fileName) { bool includeAttributes = true; var textSource = new StringTextSource(File.ReadAllText(fileName)); using (var textReader = textSource.CreateReader()) { using (var xmlReader = new XmlTextReader(textReader)) { Run(xmlReader, includeAttributes); } } var doc = new AXmlParser().Parse(textSource); using (var xmlReader = doc.CreateReader()) { Run(xmlReader, includeAttributes); } var xmlDocument = new XmlDocument(); xmlDocument.Load(doc.CreateReader()); xmlDocument.Save(Path.Combine(Program.TempPath, "savedXmlDocument.xml")); var xDocument = XDocument.Load(doc.CreateReader()); xDocument.Save(Path.Combine(Program.TempPath, "savedXDocument.xml")); File.WriteAllText(Path.Combine(Program.TempPath, "inputDocument.xml"), textSource.Text); }