public void Emit(ref SpanBuffer <byte> buf) { string name = this.Name.ToUpperInvariant(); if (name.Length < 4) { int pad = 4 - name.Length; name = name + ' '._MakeCharArray(pad); } var nameBuf = name.ToUpperInvariant()._GetBytes_Ascii(); if (nameBuf.Length != 4) { throw new CoresLibException("nameBuf.Length != 4"); } string dataStr = Str.Base64ToSafe64(Str.Base64Encode(this.Data)); var dataBuf = dataStr._GetBytes_Ascii(); int dataSize = dataBuf.Length; string dataSizeStr = dataSize.ToString("0000000000"); var dataSizeStrData = dataSizeStr._GetBytes_Ascii(); buf.Write(nameBuf); buf.Write(dataSizeStrData); buf.Write(dataBuf); }