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, 1673 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 Ist "C Sharp" das Richtige für mich, als Neuling (11)

Frage von BlueLines zum Thema C und C ...

Windows Server
C sharp oder Powershell oder VB? (3)

Frage von 1410640014 zum Thema Windows Server ...

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
Notebook & Zubehör

WOL bei HP Notebooks

(6)

Erfahrungsbericht von Henere zum Thema Notebook & Zubehör ...

LAN, WAN, Wireless

Neue Cisco Catalyst-Serie 9000

Information von Kuemmel zum Thema LAN, WAN, Wireless ...

Sicherheit

Millionen Euro in den Sand gesetzt?

(3)

Information von transocean zum Thema Sicherheit ...

Heiß diskutierte Inhalte
Windows 10
Netzwerkkarte schaltet sich erst nach dem Logon ein (23)

Frage von DerWoWusste zum Thema Windows 10 ...

Windows Server
Seit IP Umstellung DC DNS Fehler (18)

Frage von Yaimael zum Thema Windows Server ...

Netzwerke
Mobile Einwahl IPSec VPN von iPhone iPad T-Mobile zur Pfsense (16)

Frage von Spitzbube zum Thema Netzwerke ...

Weiterbildung
gelöst Fest angestellter Admin oder Systemhaus Admin mit Kundenbetreuung? (15)

Frage von Voiper zum Thema Weiterbildung ...