paulsk8 Posted July 6, 2012 Report Posted July 6, 2012 (edited) SalutVreau s? ?tiu , este posibil ca prin c# s? pot edita un fi?ier .txt dintr-un FTP?De exemplu s? pun un richtextbox ?i un buton. Cand ap?s buttonul fi?ierului fisier.txt s? ii se adauge caracterele din richtextbox....Adic? ar fi geva genstring continut= continutul fisierului fisier.txt +system.environment newline+richtextbox1.text;si apoi s? trimit in ftp fisierul fisier.txt care s?con?ina stringul continut ( înlocuindu-se cel vechi ).Pa?ii ar fi gen1) citirea / downloadarea fi?ierului din ftp2. editarea continutului3.inlocuirea in ftpEste posibil?Daca da cum? Edited July 6, 2012 by paulsk8 Quote
nedo Posted July 6, 2012 Report Posted July 6, 2012 (edited) LE: Vad ca ti-ai raspuns singur. Se poate, trebuie doar sa urmezi exact pasii aia. Google te poate ajuta, sau te ajuta em \/\/ Edited July 6, 2012 by nedo Quote
em Posted July 6, 2012 Report Posted July 6, 2012 Este posibil, costa $15, plata paypal, timp estimat 3 ore. Quote
paulsk8 Posted July 6, 2012 Author Report Posted July 6, 2012 (edited) Nu am de gând s? platesc pentru asta..Momentan nu am gasit pe google o metoda sa trimit un fisier .txt intr-un ftp cu nume si parola.. si sa citesc un fisier .txt din ftp fara sa il downloadez...Am gasit sa citesc un fisier din FTP daca este dupa un url gen ftp.xxx.com/fisier.txtWebClient request = new WebClient();string url = "ftp:// ftp.xxx.com" +fisier.txt";request.Credentials = new NetworkCredential("anonymous", "anonymous@example.com");try{ byte[] newFileData = request.DownloadData(url); string fileString = System.Text.Encoding.UTF8.GetString(newFileData); MessageBox.Show(fileString);}catch {}Asta de mai sus merge daca ai ftp cumparat..eu am gasit ftp gratis ftp.drivehq.com si de pe el vreau sa iau pun fisierele.. Edited July 6, 2012 by paulsk8 Quote
SilviuSDS Posted July 6, 2012 Report Posted July 6, 2012 Se vede ca esti la inceput cu c#-ul si .net framework. Munca e facuta in mare parte de cei de la Microsoft, tu trebuie doar sa stii sa profiti de ea.Indiciu: System.NetDeclara-l direct ca namespace sa poti accesa direct:using namespace System.Net;Daca nu stii unde trebuie pusa bucatica asta de cod, atunci lasa-te de "proiectul" asta si pune-te pe invatat.Si inca ceva, de ce nu folosesti un textbox normal? Quote
nedo Posted July 6, 2012 Report Posted July 6, 2012 Uite o librarie facuta special pentru asa ceva aici Quote
paulsk8 Posted July 6, 2012 Author Report Posted July 6, 2012 Uite o librarie facuta special pentru asa ceva aiciMersi de link dar spune acoloDownloading and Uploading FilesEu doresc s?îl citesc f?r? a-l downloada.. ca exemplul dat mai sus de mine dar sa mearga pe ftp cu nume si parola.. Quote
paulsk8 Posted July 6, 2012 Author Report Posted July 6, 2012 Se vede ca esti la inceput cu c#-ul si .net framework. Munca e facuta in mare parte de cei de la Microsoft, tu trebuie doar sa stii sa profiti de ea.Indiciu: System.NetDeclara-l direct ca namespace sa poti accesa direct:using namespace System.Net;Daca nu stii unde trebuie pusa bucatica asta de cod, atunci lasa-te de "proiectul" asta si pune-te pe invatat.Si inca ceva, de ce nu folosesti un textbox normal?Sunt la inceput dar nici chiar a?a.. Nu inteleg ce vrei sa zici..probabil vrei sa spui ca in postul anterior nu am pus si lusing system.net?Am pus in program, am dat paste aici doar ce era mai important..Ai inteles gresit.. Quote
SilviuSDS Posted July 6, 2012 Report Posted July 6, 2012 (edited) Mersi de link dar spune acoloDownloading and Uploading FilesEu doresc s?îl citesc f?r? a-l downloada.. ca exemplul dat mai sus de mine dar sa mearga pe ftp cu nume si parola..Tu cand incarci forumul RST ce crezi ca faci? Descarci indexul intr-un fisier temporar sau o zone de memorie ce va fi eliberata dupa ce tu navighezi pe alta pagina, asta faci, orice informatie tragi de pe internet se numeste descarcare, fie ca o salvezi pe HDD fie ca nu. Descarci fisierul pe HDD sau intr-o variabila, cum vrei tu, citesti continutul si-l bagi intr-un string, il concatenezi cu ce vrei tu, memorezi in fisier, il urci in ftp si apoi stergi fisierul de pe HDD sau eliberezi variabila ce il contine. E chiar asa de greu?Sunt la inceput dar nici chiar a?a.. Nu inteleg ce vrei sa zici..probabil vrei sa spui ca in postul anterior nu am pus si lusing system.net?Am pus in program, am dat paste aici doar ce era mai important..Ai inteles gresit..Postul cu codul l-ai scris in timp ce scriam si eu postul meu, iar in acel post incercam sa-ti atrag atenti asupra System.Net.FtpClient dar esti batut in cap. De ce folosesti WebClient pentru ftp, pentru ftp folosesti FtpClient.Codul merge doar daca ai declarat namespaceul.FtpClient ftpClient = new FtpClient("ftp://....", "username", "password");ftpClient.PermitOverwrite = true;Iar de aici sa zicem ca te ajuta Intellisense.PS: DUBLU POST Edited July 6, 2012 by SilviuSDS Quote
paulsk8 Posted July 6, 2012 Author Report Posted July 6, 2012 Stiu ca am facut dublu post, credeam ca automat se lipesc, in fine.Daca ai vazut , mai sus am aratat o metoda care citeste continunul unui fisier .txt fara sa il downloadeze dar problema ca e acel ftp are domeniu..nu nume si parola..Si te rog vorbeste civilizat, daca crezi ca cer prea multe sau nu inteleg ceva ori imi explici frumos ori dai CTRL+W . Quote
nedo Posted July 6, 2012 Report Posted July 6, 2012 De fapt metodata downloadeaza fisierul, doar ca o face direct in variabila si nu intr-un fisier, desi e posibil ca in background sa creeze si un fisier temp. Urmareste pasii pe care chiar tu i-ai specificat, si foloseste ftp client si nu webclientPa?ii ar fi gen1) citirea / downloadarea fi?ierului din ftp2. editarea continutului3.inlocuirea in ftp Quote
SilviuSDS Posted July 6, 2012 Report Posted July 6, 2012 Metoda ta descarca fisierul in RAM si nu in ROM, poti face asta si cu FtpClient dar tu nici macar nu incerci, ti-am dat indiciu, apoi ti-am dat cod mura-n-gura, daca n-ai chef sa-l faci si vrei sa-l face cineva pentru tine, platesti, altfel foloseste FileZilla si scapi de o bataie de cap.Toti am fost candva in stagiul tau, am perseverat si am reusit, eu unul nu am cerut niciodata ajutor pe vreun forum, daca n-am stiut ceva l-am intrebat pe batranul Google, daca nici el nu a stiut, m-am chinuit singur pana am reusit, ori am schimbat metoda, dar am dus mereu la capat ceea ce am vrut sa duc.Chiar azi ma chinuiam sa scot titlul unei ferestre cu GetWindowText(), n-a vrut deloc sa mearga asa ca am folosit SendMessage(), ceea ce vreau eu sa intelegi tu din asta este ca, nu intodeauna calea cea mai usoare este calea cea buna. Uneori trebuie sa depui mai mult efort ca sa obtii ceea ce vrei, nu o sa-ti pice din cer. Quote
paulsk8 Posted July 6, 2012 Author Report Posted July 6, 2012 In fine am reusit sa citesc pana la urma fara sa deschid..Acum mai am o intrebare..pot trimite la un ftp un fisier txt dintr-un string fara a creea fisierul? Sau cumva sa-l creeez in memoria ram cu spunea silviu Quote
paulsk8 Posted July 6, 2012 Author Report Posted July 6, 2012 In fine am reusit ce vroiam sa fac.Programul citeste de pe un host un fisier .txt fara a-l downloada gen www.lalala.com/fisierull.txtContinutul apare intr-un richtextbox( care are enabled=false)Scriu ceva in alt richtextbox apas pe un buton si creeaza un .txt in folderul system32 cu continutul vechi al fisierului + ce scrie in al 2-lear richtextbox, fisierul inlocuieste pe cel original din host adica pe www.lalala.com/fisierull.txt dupa care fisierul din system32 va va fi inlocuit cu unul care nu are nimic scris in el.Multumesc tuturor pentru ajutor. Quote
me.mello Posted July 6, 2012 Report Posted July 6, 2012 In primu rand, Invata ce sunt alea variabile si unde sunt stocate cand li se dau o valoare, apoi invata ce e memoria Ram si mai ales aia ROM, care nu o vei folosi NICIODATA in C#.Fisierele care sunt pe un server ftp au aceasi atribute(read write append) ca si cele stocate local, ceea ce inseamna ca vei lucra cu IO Stream si .NetProblema este ca te-au incurcat baietii cu commenturile lor de mari calculatoristi, tu ai abordat foarte bine subiectul.Pa?ii ar fi gen1) citirea / downloadarea fi?ierului din ftp2. editarea continutului3.inlocuirea in ftpEu nu o sa-ti scriu vreun cod, nu e igienic dar iti spun metodologia pe care ar trebui sa o urmezi in pasi.Verifici daca esti conectat la retea,incerci conectarea la server, incerci sa accesezi path+fisier, prin ce mod vrei tu read/write/append, daca doresti ceva din acel fisier practic ii faci o copie in stream, iar daca vrei fisierul cu totu va trebui sa te folosesti de Encoding Byte, apoi dupa ce ai acea parte din fisier sau cu totul fie ca e ca string sau byte in stream il poti manipula cum vrei tu, salva in computer sau modifica si trimite iar pe server desi daca e vorba de asta mai bine il deschizi direct.Eu zic sa citesti bine msdn cu treburi de genul, daca te-ai impotmolit acum si deja ceri cod, te numesti un macaronar care niciodata nu va programa cum trebuie si va simti nevoie de un pic de cod de la altii.Invata bine deocamdata system.text, system.io, la ce se spunea mai sus, lasa ultimul interop services si unsafe casting ca nu e de tine momentan, daca te-ai apucat de .Net invata ce are .Net nu incerca deja win32 api ca o sa ai mari batai de cap. Quote