public void File_AppendText() { Console.WriteLine("File.AppendText()"); var utf8 = NativeMethods.DefaultFileEncoding.BodyName.ToUpperInvariant(); string line; var matchLine = string.Empty; var tempFile = Path.GetTempFileName(); StreamReader streamRead; StreamWriter streamWrite; Console.WriteLine("Default AlphaFS Encoding: {0}", NativeMethods.DefaultFileEncoding.EncodingName); #region Create Filestream, CreateText() // Create filestream and append text as UTF-8, default. using (streamWrite = File.CreateText(tempFile)) { streamWrite.Write(UnitTestConstants.TextHelloWorld); } // Read filestream contents. using (streamRead = File.OpenText(tempFile)) { while ((line = streamRead.ReadLine()) != null) { Console.WriteLine("\n CreateText(): [{0}] filestream: [{1}]\n Appended: [{2}]\n Content : [{3}]", streamRead.CurrentEncoding.EncodingName, tempFile, UnitTestConstants.TextHelloWorld, line); matchLine = line; // Catch the last line. } } Assert.IsTrue(matchLine.Equals(UnitTestConstants.TextHelloWorld, StringComparison.OrdinalIgnoreCase)); #endregion // Create Filestream, CreateText() #region AppendText() to Filestream // Append text as UTF-8, default. using (streamWrite = File.AppendText(tempFile)) { streamWrite.Write(UnitTestConstants.TextGoodbyeWorld); } // Read filestream contents. using (streamRead = File.OpenText(tempFile)) { while ((line = streamRead.ReadLine()) != null) { Console.WriteLine("\n AppendText() as [{0}]\n Appended: [{1}]\n Content : [{2}]", utf8, UnitTestConstants.TextGoodbyeWorld, line); } } // Append text as UTF-8, default. using (streamWrite = File.AppendText(tempFile)) { streamWrite.WriteLine(UnitTestConstants.TextUnicode); } // Read filestream contents. matchLine = string.Empty; using (streamRead = File.OpenText(tempFile)) { while ((line = streamRead.ReadLine()) != null) { Console.WriteLine("\n AppendText() as [{0}]\n Appended: [{1}]\n Content : [{2}]", utf8, UnitTestConstants.TextGoodbyeWorld, line); matchLine = line; // Catch the last line. } } Assert.IsTrue(matchLine.Equals(UnitTestConstants.TextHelloWorld + UnitTestConstants.TextGoodbyeWorld + UnitTestConstants.TextUnicode, StringComparison.OrdinalIgnoreCase)); File.Delete(tempFile, true); Assert.IsFalse(File.Exists(tempFile), "Cleanup failed: File should have been removed."); #endregion // AppendText() to Filestream }