Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

C Sharp FTP Dateigröße

Frage Entwicklung C und C++

Mitglied: MisterExpulso

MisterExpulso (Level 1) - Jetzt verbinden

28.03.2013, aktualisiert 13:04 Uhr, 1688 Aufrufe

Moin zusammen,

ich bin gerade dabei eine FTP Klasse zu schreiben. Diese soll unter anderem auch die Dateigröße einer Datei auf dem Server zurückgeben:
01.
public long getFileSize(string serverFile) 
02.
03.
            long size = -1; 
04.
            FtpWebRequest request = initConnection(serverFile); 
05.
            request.Method = WebRequestMethods.Ftp.GetFileSize; 
06.
            WebResponse response = checkConnection(request); 
07.
            if (response != null) 
08.
09.
                size = response.ContentLength;               
10.
11.
            return size; 
12.
        }
mit den beiden Hilfsmethoden:
initConnection:
01.
public FtpWebRequest initConnection(string serverFile) 
02.
03.
            FtpWebRequest request = (FtpWebRequest)WebRequest.Create(@"ftp://" + server + @"/" + serverFile); 
04.
            request.Credentials = new NetworkCredential(user, password); 
05.
            return request; 
06.
        }
checkConnection:
01.
public WebResponse checkConnection(FtpWebRequest request) 
02.
03.
            WebResponse response = null; 
04.
            try { 
05.
                response = request.GetResponse(); 
06.
            } catch (Exception ex) { } 
07.
            return response; 
08.
        }
Wenn ich mir nun ein Objekt aus dieser Klasse erzeuge, kommt es zu einer Exception:
01.
Der Remoteserver hat einen Fehler zurückgegeben: (550) Datei nicht verfügbar.
Umgehen lässt sich das ganze allerdings, wenn ich in getFileSize einen Workaround einbaue:
01.
long size = -1; 
02.
 
03.
// BUGFIX 
04.
FtpWebRequest r = initConnection(serverFile); 
05.
r.Method = WebRequestMethods.Ftp.DownloadFile; 
06.
WebResponse w = checkConnection(r); 
07.
w.Close(); 
08.
// + + + + +  
09.
 
10.
FtpWebRequest request = initConnection(serverFile); 
11.
... (s.o.)
Jetzt baut sich die Verbindung ohne Probleme auf. Das ist ja an und für sich gut. ich wüsste nur gerne warum das funktioniert.


Gruß,
DB
Ähnliche Inhalte
C und C++
gelöst "Blassheit" bei einem label in C-sharp (5)

Frage von derCreeper zum Thema C und C ...

C und C++
gelöst Ist "C Sharp" das Richtige für mich, als Neuling (11)

Frage von BlueLines zum Thema C und C ...

C und C++
gelöst C-sharp Form buggt (2)

Frage von Yanmai zum Thema C und C ...

C und C++
gelöst C-Sharp Process.Start und SubProcesses (4)

Frage von mayho33 zum Thema C und C ...

Neue Wissensbeiträge
Windows Update

Novemberpatches und Nadeldrucker bereiten Kopfschmerzen

(14)

Tipp von MettGurke zum Thema Windows Update ...

Windows 10

Abhilfe für Abstürze von CDPUsersvc auf Win10 1607 und 2016 1607

(7)

Tipp von DerWoWusste zum Thema Windows 10 ...

RedHat, CentOS, Fedora

Fedora 27 ist verfügbar

Information von Frank zum Thema RedHat, CentOS, Fedora ...

Heiß diskutierte Inhalte
Server
Bilder aus dem Web mit CSV runterladen (30)

Frage von Yannosch zum Thema Server ...

Windows Update
WSUS 4 (Server 2012 R2) - Windows 10 Updates nicht möglich (12)

Frage von c0d3.r3d zum Thema Windows Update ...

Windows Userverwaltung
gelöst Administrator hat alle Rechte verloren (10)

Frage von mrdead zum Thema Windows Userverwaltung ...