52 lines
No EOL
1.3 KiB
C#
52 lines
No EOL
1.3 KiB
C#
using System;
|
|
using System.IO;
|
|
|
|
namespace JD.Serialization
|
|
{
|
|
class BigEndianBinaryWriter : BinaryWriter
|
|
{
|
|
public BigEndianBinaryWriter(System.IO.Stream stream) : base(stream) { }
|
|
|
|
public override void Write(float _value)
|
|
{
|
|
var a32 = BitConverter.GetBytes(_value);
|
|
Array.Reverse(a32);
|
|
base.Write(a32);
|
|
}
|
|
|
|
public override void Write(double _value)
|
|
{
|
|
var a64 = BitConverter.GetBytes(_value);
|
|
Array.Reverse(a64);
|
|
base.Write(a64);
|
|
}
|
|
|
|
public override void Write(int _value)
|
|
{
|
|
var a32 = BitConverter.GetBytes(_value);
|
|
Array.Reverse(a32);
|
|
base.Write(a32);
|
|
}
|
|
|
|
public override void Write(short _value)
|
|
{
|
|
var a16 = BitConverter.GetBytes(_value);
|
|
Array.Reverse(a16);
|
|
base.Write(a16);
|
|
}
|
|
|
|
public override void Write(long _value)
|
|
{
|
|
var a64 = BitConverter.GetBytes(_value);
|
|
Array.Reverse(a64);
|
|
base.Write(a64);
|
|
}
|
|
|
|
public override void Write(uint _value)
|
|
{
|
|
var a32 = BitConverter.GetBytes(_value);
|
|
Array.Reverse(a32);
|
|
base.Write(a32);
|
|
}
|
|
}
|
|
} |