StringWriterWithEncoding.cs 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. using System;
  2. using System.IO;
  3. using System.Text;
  4. namespace Emby.Dlna.Didl
  5. {
  6. public class StringWriterWithEncoding : StringWriter
  7. {
  8. private readonly Encoding _encoding;
  9. public StringWriterWithEncoding()
  10. {
  11. }
  12. public StringWriterWithEncoding(IFormatProvider formatProvider)
  13. : base(formatProvider)
  14. {
  15. }
  16. public StringWriterWithEncoding(StringBuilder sb)
  17. : base(sb)
  18. {
  19. }
  20. public StringWriterWithEncoding(StringBuilder sb, IFormatProvider formatProvider)
  21. : base(sb, formatProvider)
  22. {
  23. }
  24. public StringWriterWithEncoding(Encoding encoding)
  25. {
  26. _encoding = encoding;
  27. }
  28. public StringWriterWithEncoding(IFormatProvider formatProvider, Encoding encoding)
  29. : base(formatProvider)
  30. {
  31. _encoding = encoding;
  32. }
  33. public StringWriterWithEncoding(StringBuilder sb, Encoding encoding)
  34. : base(sb)
  35. {
  36. _encoding = encoding;
  37. }
  38. public StringWriterWithEncoding(StringBuilder sb, IFormatProvider formatProvider, Encoding encoding)
  39. : base(sb, formatProvider)
  40. {
  41. _encoding = encoding;
  42. }
  43. public override Encoding Encoding => (null == _encoding) ? base.Encoding : _encoding;
  44. }
  45. }