mirror of
https://github.com/Caraxi/mare.server.git
synced 2025-12-24 01:39:17 +01:00
…
This commit is contained in:
parent
e7b72baa1e
commit
84730d21ea
1 changed files with 5 additions and 3 deletions
|
|
@ -6,6 +6,7 @@ namespace MareSynchronosStaticFilesServer.Utils;
|
||||||
public sealed class BlockFileDataSubstream : IDisposable
|
public sealed class BlockFileDataSubstream : IDisposable
|
||||||
{
|
{
|
||||||
private readonly MemoryStream _headerStream;
|
private readonly MemoryStream _headerStream;
|
||||||
|
private readonly BinaryWriter _headerStreamWriter;
|
||||||
private readonly FileStream _dataStream;
|
private readonly FileStream _dataStream;
|
||||||
private int _headerPosition = 0;
|
private int _headerPosition = 0;
|
||||||
private long _dataPosition = 0;
|
private long _dataPosition = 0;
|
||||||
|
|
@ -17,9 +18,9 @@ public sealed class BlockFileDataSubstream : IDisposable
|
||||||
public BlockFileDataSubstream(FileStream dataStream)
|
public BlockFileDataSubstream(FileStream dataStream)
|
||||||
{
|
{
|
||||||
_headerStream = new MemoryStream();
|
_headerStream = new MemoryStream();
|
||||||
using var headerStreamWriter = new BinaryWriter(_headerStream);
|
_headerStreamWriter = new BinaryWriter(_headerStream);
|
||||||
headerStreamWriter.Write(Encoding.ASCII.GetBytes("#" + new FileInfo(dataStream.Name).Name + ":" + dataStream.Length.ToString(CultureInfo.InvariantCulture) + "#"));
|
_headerStreamWriter.Write(Encoding.ASCII.GetBytes("#" + new FileInfo(dataStream.Name).Name + ":" + dataStream.Length.ToString(CultureInfo.InvariantCulture) + "#"));
|
||||||
headerStreamWriter.Flush();
|
_headerStreamWriter.Flush();
|
||||||
_headerStream.Position = 0;
|
_headerStream.Position = 0;
|
||||||
_dataStream = dataStream;
|
_dataStream = dataStream;
|
||||||
}
|
}
|
||||||
|
|
@ -67,6 +68,7 @@ public sealed class BlockFileDataSubstream : IDisposable
|
||||||
{
|
{
|
||||||
if (_disposed) return;
|
if (_disposed) return;
|
||||||
_headerStream.Dispose();
|
_headerStream.Dispose();
|
||||||
|
_headerStreamWriter.Dispose();
|
||||||
_dataStream.Dispose();
|
_dataStream.Dispose();
|
||||||
_disposed = true;
|
_disposed = true;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue