PDA

View Full Version : حرفه ای: ساخت برنامه ای برای آپلود



Alireza.imani
شنبه 27 آبان 1391, 12:56 عصر
سلام دوستان..من می خوام با راهنمایی و کمک شما برنامه ای رو بنویسم تا از سایت مشخص آپلود،آپلود کنه و لینکش رو در اختیارمون قرار بده.


راهنماییم کنید.:چشمک:

s3rv3r
شنبه 27 آبان 1391, 13:38 عصر
سایت مشخص اپلود باید اول بفهمید که چجوری پست میشه به سایت
دکمه اپلود رو میزنید درخواست به کجا ارسال میشه و غیره

و دوم تبدیل فایل به ارایه ای از جنس بایت و نوشتن قسمت ارسالی به سایت
و در نهایت ارسال برای اپلود
اپلود که شد یه پترن مینویسی که جایی که لینک اپلود رو مینویسه رو بگیره و بهت نشون بده
کل سناریو اپلود

Alireza.imani
شنبه 27 آبان 1391, 16:11 عصر
ممکنه که یک نمونه بگذارید؟

s3rv3r
شنبه 27 آبان 1391, 16:22 عصر
string[] open = this.openFileDialog1.FileName.Split('\\');
string nome = open[open.Length - 1];
string[] temp = nome.Split('.');
string extension = temp[1];
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(this.indirizzo + "servletUpload/controllerFiles");
string post_data = this.openFileDialog1.FileName;
string boundary = "AaB03x";
string useragent = "_Webclient_Meetecho 1.0";
req.UserAgent = useragent;

req.ContentType = "multipart/form-data; boundary=" + boundary;
req.Method = "POST";
byte[] contents = FileToByteArray(post_data);
MemoryStream postData = new MemoryStream();
string newLine = "\r\n";
StreamWriter sw = new StreamWriter(postData);
sw.Write("--" + boundary + newLine);
sw.Write("Content-Disposition: form-data; name=\"myFile\"" +"; filename=" + "\"" + this.stanza + "-" + this.room + "."+extension + "\"" + newLine,"upload",this.openFileDialog1.FileName, newLine);
sw.Write("Content-Type: application/octet-stream; charset=ISO-8859-1" + newLine);
sw.Write("Content-Transfer-Encoding: binary" + newLine + newLine);
sw.Write("VALUE" + newLine);
sw.Write("--{0}--{1}", boundary, newLine);

sw.Flush();


postData.Write(contents, 0, contents.Length);
sw.Write(newLine);


sw.Flush();

req.ContentLength = postData.Length;
using (Stream s = req.GetRequestStream())

postData.WriteTo(s);

postData.Close();

Alireza.imani
شنبه 27 آبان 1391, 18:06 عصر
این کد رو کجا باید گذاشت؟

s3rv3r
شنبه 27 آبان 1391, 20:37 عصر
این کد httpwebrequest هست

شما ابتدا باید کار با webrequest رو یادبگیرد. نمونه تو اینترنت زیاده میتونید با جست و جو پیدا کنید.

اگه دقت کنید میبینیدی که از openfiledialog برای انتخاب فایل استفاده کرده و تبدیل به بایت و فهمیدن پسوند و ...

احتمالا تو اپلود یه دکمه ای هست به اسم اپلود تو اون باس نوشت :)