myGully.com

myGully.com (https://mygully.com/index.php)
-   Programmierung (https://mygully.com/forumdisplay.php?f=67)
-   -   [VC++] FTP Download (https://mygully.com/showthread.php?t=2124124)

jedirächer 22.09.10 17:17

[VC++] FTP Download
 
Hallo,
ich habe mir eine eigene Klasse für das downloaden einer Datei von einem FTP-Server geschrieben:
Code:

String^ FTPFile::Download(Uri^ serverUri)
{
  WebClient^ request = gcnew WebClient;
  String^ ex;
  request->Credentials = gcnew NetworkCredential( "name","passwort" );
  try
  {
      array<Byte>^newFileData = request->DownloadData(serverUri);
      String^ fileString = System::Text::Encoding::UTF8->GetString(newFileData);
      return fileString;
    }
       
  catch ( WebException^ e )
  {
          ex = e->ToString();
  }
  return ex;
}

Wenn ich jetzt in meinem Projekt die Datei downloaden will mach ich das ja so:
Code:

FTPFile ^f = gcnew FTPFile();
Uri^ Uri1 = gcnew Uri( "ftp://.../");
Uri^ Uri2 = gcnew Uri( Uri1, "Config.txt" );
StreamWriter^ w = gcnew StreamWriter("Config.txt");
w->WriteLine(f->Download(Uri2));
w->Close();

Nur steht jetzt in der Datei:
Code:

123
Statt wie auf dem FTP Server:
Code:

1
2
3

Hoffe das mir einer helfen kann. Danke im vorraus.

urga 22.09.10 18:35

wenn die datei auf dem server die selbe anzahl von bytes aufweist, wie die gezogene, dann sind sie a) indentisch und b) für eine ascii-datei musst du die "\n" in "\r\n" umwandeln, damit notepad die zeilenumbrüche korrekt anzeigt.

germgerm 22.09.10 19:20

schau dir die datei auch mit wordpad oder noch besser gleich mit notepad++ an. beim notepad++ gibt es auch einen hex-modus.

jedirächer 23.09.10 12:20

In WordPad wird es so angezeigt wie auf dem Server, habe es dann mittels Replace("\n","\r\n"); so hinbekommen das es auch im Editor so angezeigt. Noch mal Danke für die Hilfe.


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:09 Uhr.

Powered by vBulletin® (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.