Wie eine Remote-Textdatei mit Server.MapPath in ASP.Net öffnen?
-
21-09-2019 - |
Frage
Das ist, was ich habe jetzt eine Datei auf demselben Server befindet und es funktioniert.
Dim FILENAME as String = Server.MapPath("Output.txt")
Dim objStreamWriter as StreamWriter
objStreamWriter = File.CreateText(FILENAME)
dr = myCommand.ExecuteReader()
While dr.Read()
objStreamWriter.WriteLine("{0}|{1}|{2:yyyy-MM-dd}|{3:yyyy-MM-dd}", dr(0), dr(1), dr(2), dr(3))
End While
objStreamWriter.Close()
Ich habe geplant, auf FTPing die Datei auf einem anderen Server einmal getan, aber ist es eine Möglichkeit, es auf einem Remote-Server zu tun? das heißt eine Textdatei auf einem Remote-Server und Schreib darauf? Hat keine Instanzen dieser Verwendung finden. Wie ServerXMLHTTP verwendet Server.MapPath in diesem Fall zu ersetzen?
Vielen Dank für Ihre Zeit.
Lösung
Mit MapPath
und StreamWriter
auf diese Weise wird nicht funktionieren. Dies ist für eine lokale Datei Szenario gemeint. Sie können direkt FTP-Dateien von .net mit FtpWebRequest .
Hier ist ein Beispiel von FtpWebRequest unter Verwendung einer Datei (Beispiel von hier schreiben ):
FtpWebRequest request =
(FtpWebRequest)WebRequest.Create("ftp://www.contoso.com/output.txt");
request.Method = WebRequestMethods.Ftp.UploadFile;
// This example assumes the FTP site uses anonymous logon.
request.Credentials =
new NetworkCredential ("anonymous","janeDoe@contoso.com");
Stream requestStream = request.GetRequestStream();
requestStream.Write(stuff); // write your stuff here
requestStream.Close();
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
Console.WriteLine("Upload File Complete, status {0}",
response.StatusDescription);
response.Close();