J'ai une URL vers un fichier PDF et je veux diffuser le fichier PDF dans ma visionneuse de pages.Échouer un fichier PDF vers une page Web échouant
Je peux avec succès (je pense) récupérer le fichier PDF. Puis quand je fais le Response.BinaryWrite() j'obtiens un "le fichier est endommagé et n'a pas pu être réparé" erreur du lecteur d'Adobe.
Voici le code que j'ai:
protected void Page_Load(object sender, EventArgs e)
{
if (IsPostBack)
{
byte[] output = DoWork("Http://localhost/test.pdf");
Response.Clear();
Response.ContentType = "application/pdf";
Response.AddHeader("content-disposition", "inline; filename=MyPDF.PDF");
Response.AddHeader("content-length", output.Length.ToString());
Response.BinaryWrite(output);
Response.End();
}
}
public byte[] DoWork(string requestUrl)
{
byte[] responseData;
HttpWebRequest req = null;
HttpWebResponse resp = null;
StreamReader strmReader = null;
try
{
req = (HttpWebRequest)WebRequest.Create(requestUrl);
using (resp = (HttpWebResponse)req.GetResponse())
{
byte[] buffer = new byte[resp.ContentLength];
BinaryReader reader = new BinaryReader(resp.GetResponseStream());
reader.Read(buffer, 0, buffer.Length);
responseData = buffer;
}
}
finally
{
if (req != null)
{
req = null;
}
if (resp != null)
{
resp.Close();
resp = null;
}
}
return responseData;
}
vous êtes en mesure de le télécharger à l'aide, je veux dire laisser un navigateur (ou wget) faire le travail? – falstro