Ich konvertiere ein Bild in base64 Zeichenfolge zum Hochladen über HttpWebRequest in C# .auf Server-Seite, wenn ich Base64 Zeichenfolge die Zeichen "+" erhalten haben in weiß konvertiert Leerzeichen "". Es gibt mir Fehler, diese Base64-Zeichenfolge in Byte-Array zu konvertieren.Ich möchte keine Änderungen auf der Serverseite vornehmen (in Web-Services). Ich möchte diese Probleme auf der Clientseite beheben. Mein clientseitiger Code ist wie folgt.sendende Base64-Zeichenfolge mit HttpWebRequest in C# konvertieren "+" in Leerraum Problem
//////////////////
WSManagerResult wsResult = new WSManagerResult();
try
{
HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(serviceURL);
req.Method = "POST";
req.ProtocolVersion = HttpVersion.Version11;
req.ContentType = "application/x-www-form-urlencoded";
// req.ContentType = "application/x-www-form-urlencoded; charset=utf-8";
// req.CookieContainer = new CookieContainer();
string content = string.Empty;
foreach (KeyValuePair<string, string> entry in paramDic)
{
// entry.Value ist ein Gen Basis 64 String bewertet von Bild
content = content + entry.Key + "=" + entry.Value + "&&";
}
content = content.TrimEnd('&'); // input parameter if u have more that one //a=b&dd=aa
req.ContentLength = content.Length;
// req = URLEncode(content);
Stream wri = req.GetRequestStream();
byte[] array = Encoding.ASCII.GetBytes(content);
if (array.Length > 0)
wri.Write(array, 0, array.Length);
wri.Flush();
wri.Close();
WebResponse rsp = (HttpWebResponse)req.GetResponse();
byte[] b = null;
using (Stream stream = rsp.GetResponseStream())
using (MemoryStream ms = new MemoryStream())
{
int count = 0;
do
{
byte[] buf = new byte[1024];
count = stream.Read(buf, 0, 1024);
ms.Write(buf, 0, count);
} while (stream.CanRead && count > 0);
b = ms.ToArray();
}
wsResult.result = Encoding.ASCII.GetString(b);
}
catch (Exception e)
{
clsException.ExceptionInstance.HandleException(e);
wsResult.error = e.Message;
}
return wsResult;
die "+" Alle Zeichen in über base64 String umgewandelt werden in auf "" weiß spaces.which die Ursachen Problem wie oben beschrieben.
Bitte helfen Sie mir, dieses Problem zu lösen.
Grüße
Schah Khalid
Ich versuche immer, meine Frage (Code/Eingabe) zu minimieren, bevor Sie fragen ... Jetzt merke ich, es ist sehr wichtig und gute Praxis. –