public void XmlSaveAndRestore() { var random = new Random(0); var saveds = new DemoPayload[3]; for (var i = 0; i < saveds.Length; i++) { saveds[i] = new DemoPayload { Text = i.ToString(), Number = random.Next(100, 1000) }; } var builder = new StringBuilder(); for (var i = 0; i < saveds.Length; i++) { var xml = XmlFragmentHelper.EncodeXmlFragment(saveds[i]); builder.AppendLine(xml); } var fileContent = builder.ToString(); var restoreds = XmlFragmentHelper.DecodeXmlFragments <DemoPayload>(fileContent); Assert.IsNotNull(restoreds); Assert.AreEqual(saveds.Length, restoreds.Length); for (var i = 0; i < saveds.Length; i++) { Assert.AreEqual(saveds[i].Text, restoreds[i].Text); Assert.AreEqual(saveds[i].Number, restoreds[i].Number); } }
public void RecordAcceptedSuggestion(int index, int seed, string suggestion) { var record = new SuggestionAcceptance { UtcNow = DateTime.UtcNow.Ticks, TickCount = Environment.TickCount, Seed = seed, Index = index, Word = suggestion }; XmlFragmentHelper.WriteLog(AcceptedSuggestionFilePath, record); }
public string GetHistoryText() { var records = XmlFragmentHelper.ReadLog <Spoken>(HistoryFilePath); var text = string.Join(Environment.NewLine, from r in records select r.Text); return(text); }
public void RecordHistory(string text, bool isInPrivate) { if (!isInPrivate) { var record = new Spoken { UtcNowTicks = DateTime.UtcNow.Ticks, TickCount = Environment.TickCount, IsInPrivate = isInPrivate, Text = text }; XmlFragmentHelper.WriteLog(HistoryFilePath, record); } }
public void SerializeXmlElementViaHelper() { var ob = new DemoPayload { Text = "Some Text", Number = 42 }; var xml = XmlFragmentHelper.EncodeXmlFragment(ob); Assert.AreEqual("<DemoPayload Text=\"Some Text\" Number=\"42\" />", xml); }
static string GetLocalHistoryText() { var filePath = SettingsDirectory.GetDefaultSettingsFilePath("spoken.txt"); var records = XmlFragmentHelper.ReadLog <Spoken>(filePath); var text = string.Join(Environment.NewLine, from r in records select r.Text); return(text); }
public void DeserializeManyElements() { var xml = "<DemoPayload Text=\"One\" Number=\"1\" /><DemoPayload Text=\"Two\" Number=\"2\" />"; var obs = XmlFragmentHelper.DecodeXmlFragments <DemoPayload>(xml); Assert.IsNotNull(obs); Assert.AreEqual(2, obs.Length); Assert.AreEqual("One", obs[0].Text); Assert.AreEqual(1, obs[0].Number); Assert.AreEqual("Two", obs[1].Text); Assert.AreEqual(2, obs[1].Number); }
public void WriteAndReadLogFile() { var tempPath = Path.GetTempPath(); var targetRootDirectory = Path.Combine(tempPath, Guid.NewGuid().ToString()); var targetPath = Path.Combine(targetRootDirectory, "Testing", Guid.NewGuid().ToString(), "TestLogFile.xml"); try { { var payloads = XmlFragmentHelper.ReadLog <DemoPayload>(targetPath); Assert.AreEqual(0, payloads.Length); } { XmlFragmentHelper.WriteLog(targetPath, new DemoPayload { Text = "First", Number = 101 }); var lines = File.ReadAllLines(targetPath); Assert.AreEqual(1, lines.Length); Assert.AreEqual("<DemoPayload Text=\"First\" Number=\"101\" />", lines[0]); } { XmlFragmentHelper.WriteLog(targetPath, new DemoPayload { Text = "Second", Number = 102 }); var lines = File.ReadAllLines(targetPath); Assert.AreEqual(2, lines.Length); Assert.AreEqual("<DemoPayload Text=\"First\" Number=\"101\" />", lines[0]); Assert.AreEqual("<DemoPayload Text=\"Second\" Number=\"102\" />", lines[1]); } { var payloads = XmlFragmentHelper.ReadLog <DemoPayload>(targetPath); Assert.AreEqual(2, payloads.Length); Assert.AreEqual("First", payloads[0].Text); Assert.AreEqual(101, payloads[0].Number); Assert.AreEqual("Second", payloads[1].Text); Assert.AreEqual(102, payloads[1].Number); } } finally { Directory.Delete(targetRootDirectory, true); } }
static void Main(string[] args) { var stream = new WebClient().OpenRead("http://www.gutenberg.org/cache/epub/2600/pg2600.txt"); //var stream = File.OpenRead(@"C:\Users\petea\Desktop\pg2600.txt"); using (var reader = new StreamReader(stream)) { ProcessText(reader); } var builder = new StringBuilder(); foreach (var record in records) { var fragment = XmlFragmentHelper.EncodeXmlFragment(record); builder.AppendLine(fragment); } File.WriteAllText("WarAndPeace.xml", builder.ToString()); }