Har en webservice som returnerar en fil genom att läsa upp den i en byte[] som den returnerar och den blir base64 kodad.
Hur kan man plocka upp detta och återskapa filen?
4 svar · 420 visningar · startad av Uwe
Har en webservice som returnerar en fil genom att läsa upp den i en byte[] som den returnerar och den blir base64 kodad.
Hur kan man plocka upp detta och återskapa filen?
System.IO.File.WriteAllBytes(AppDomain.CurrentDomain.BaseDirectory + "_tempUpload\\" + FileName, byteArr);
System.IO.File.WriteAllBytes(AppDomain.CurrentDomain.BaseDir ectory + "_tempUpload\\" + FileName, byteArr);
Hade ju varit kanon om jag hade 2.0, men hur gör man i 1.1?
Aj då, surt... här är nåt gammalt jag hitta, vet ej om det funkar...
FileStream filen = new FileStream(ConfigurationManager.AppSettings["Root"].ToString() + "_tempUpload\\" + filename, FileMode.OpenOrCreate);
// MemoryStream ms = (MemoryStream)A1.Stream;
// byte[] input = ms.ToArray();
filen.Write(input, 0, input.Length);
filen.Close();
Tack för koden, det var ungefär som jag hade testat men får det inte att funka nu heller. Antagligen är det nåt fel på webservicen som ser ut så här:
[WebMethod]
public byte[] GetFile(string filename)
{
byte[] Buffer = null;
FileStream fs = null;
String FullPath = null;
long FileSize;
FullPath = Server.MapPath("") + "\\tmp\\" + filename;
fs = new FileStream(FullPath, FileMode.Open);
FileSize = fs.Length;
Buffer = new byte[(int)FileSize];
fs.Read(Buffer, 0, (int)FileSize);
fs.Close();
return Buffer;
}
Går det inte att göra så?