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); }
public static string ToUrl(string uri) { if (uri.IndexOf("//") < 0) { return(uri); } return("/To?url=" + Str.Base64Encode(uri).Trim('=')); }
static ReadOnlySpan <byte> ConvertToPemIfDer(ReadOnlySpan <byte> src) { string test = src._GetString_Ascii(); if (test._InStr("-----BEGIN", false)) { return(src); } string str = "-----BEGIN PUBLIC KEY-----\n" + Str.Base64Encode(src.ToArray()) + "\n" + "-----END PUBLIC KEY-----\n\n"; return(str._GetBytes_Ascii()); }