のようなものを使用します。私は、PDFファイルをシリアライズして、XMLファイル内でサーバーに送信しなければなりませんでした。
.NETを使用している場合は、バイナリファイルを直接base64文字列に変換し、XML要素内に置くことができます。
string base64 = Convert.ToBase64String(File.ReadAllBytes(fileName));
または、XmlWriterオブジェクトに組み込まれたメソッドがあります。私の特定のケースでは、私は、Microsoftのデータ型の名前空間を含める必要がありました:
StringBuilder sb = new StringBuilder();
System.Xml.XmlWriter xw = XmlWriter.Create(sb);
xw.WriteStartElement("doc");
xw.WriteStartElement("serialized_binary");
xw.WriteAttributeString("types", "dt", "urn:schemas-microsoft-com:datatypes", "bin.base64");
byte[] b = File.ReadAllBytes(fileName);
xw.WriteBase64(b, 0, b.Length);
xw.WriteEndElement();
xw.WriteEndElement();
string abc = sb.ToString();
文字列abcはこのようなものになります。
<?xml version="1.0" encoding="utf-16"?>
<doc>
<serialized_binary types:dt="bin.base64" xmlns:types="urn:schemas-microsoft-com:datatypes">
JVBERi0xLjMKJaqrrK0KNCAwIG9iago8PCAvVHlwZSAvSW5mbw...(plus lots more)
</serialized_binary>
</doc>
Genius!ちょうど私が探していたもの! –