コード例 #1
0
        public static void Write(EndianBinaryWriter writer, BeamFile file)
        {
            writer.SeekNext(BeamHeader.HeaderSize);
            var oldPos = writer.Position;

            WriteChunks(file.Chunks, writer);

            var len = writer.Position - oldPos;

            writer.SeekBack((int)len + BeamHeader.HeaderSize);
            file.Header.Size = (uint)len + BeamHeader.IffNameSize;
            WriteHeader(file.Header, writer);
            writer.SeekNext((int)len);
        }
コード例 #2
0
 public static void Write(Stream stream, BeamFile file)
 {
     using var writer = new EndianBinaryWriter(stream);
     Write(writer, file);
 }
コード例 #3
0
 public static void Write(string filePath, BeamFile file)
 {
     using var stream = File.Open(filePath, FileMode.Create);
     Write(stream, file);
 }