mirror of
https://github.com/jellyfin/jellyfin.git
synced 2026-01-14 08:00:17 -05:00
Create and use FormattingStreamWriter Original-merge: cd2f2ca17800f71c8d94a6e043b49b7c4200e254 Merged-by: Bond-009 <bond.009@outlook.com> Backported-by: Joshua M. Boniface <joshua@boniface.me>
39 lines
1.2 KiB
C#
39 lines
1.2 KiB
C#
using System;
|
|
using System.IO;
|
|
|
|
namespace Jellyfin.Extensions;
|
|
|
|
/// <summary>
|
|
/// A custom StreamWriter which supports setting a IFormatProvider.
|
|
/// </summary>
|
|
public class FormattingStreamWriter : StreamWriter
|
|
{
|
|
private readonly IFormatProvider _formatProvider;
|
|
|
|
/// <summary>
|
|
/// Initializes a new instance of the <see cref="FormattingStreamWriter"/> class.
|
|
/// </summary>
|
|
/// <param name="stream">The stream to write to.</param>
|
|
/// <param name="formatProvider">The format provider to use.</param>
|
|
public FormattingStreamWriter(Stream stream, IFormatProvider formatProvider)
|
|
: base(stream)
|
|
{
|
|
_formatProvider = formatProvider;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Initializes a new instance of the <see cref="FormattingStreamWriter"/> class.
|
|
/// </summary>
|
|
/// <param name="path">The complete file path to write to.</param>
|
|
/// <param name="formatProvider">The format provider to use.</param>
|
|
public FormattingStreamWriter(string path, IFormatProvider formatProvider)
|
|
: base(path)
|
|
{
|
|
_formatProvider = formatProvider;
|
|
}
|
|
|
|
/// <inheritdoc />
|
|
public override IFormatProvider FormatProvider
|
|
=> _formatProvider;
|
|
}
|