1つのオプションは、たとえばユーロのために、区切り文字を選択することです。文字列に参加、彼ら(おそらくUTF8)をコードし、ベース-64としてバイトをパック...
string[] data = {"abc","123", "def"};
string s = string.Join("¤", data);
byte[] raw = Encoding.UTF8.GetBytes(s);
string alphaNumeric = Convert.ToBase64String(raw); // send this
(あなたはそのベース64の使用数の英数字以外の文字を処理する必要があるかもしれません)。
そして、それを逆にする:
raw = Convert.FromBase64String(alphaNumeric);
s = Encoding.UTF8.GetString(raw);
data = s.Split('¤');
をキー/値のペアを送信したい場合は...よく、明らか選択は、クエリ文字列になることは、彼ら以来、自分自身をパラメータこれのために設計されています。しかし、あなたバイトストリームとして必要それならば:あなたはちょうどそれが少し見えにくくさせると考えられる使用を解決するために(JSON、 に辞書/ハッシュテーブルをシリアライズして、BASE64に変更することができ
var data = new DbConnectionStringBuilder();
data["foo"] = "abc";
data["bar"] = "123 + ;la";
string s = data.ConnectionString;
byte[] raw = Encoding.UTF8.GetBytes(s);
string alphaNumeric = Convert.ToBase64String(raw); // send this
raw = Convert.FromBase64String(alphaNumeric);
s = Encoding.UTF8.GetString(raw);
data.ConnectionString = s;
foreach (string key in data.Keys)
{
Console.WriteLine(key + "=" + data[key]);
}
投票を取得します。 ;-p –
Heh、しかしあなたはBicased Marc;) – GenericTypeTea
本当に... ;-p –