Como abrir um arquivo de texto remoto usando o Server.mappath no ASP.NET?
-
21-09-2019 - |
Pergunta
É isso que tenho agora para um arquivo residente no mesmo servidor e funciona.
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()
Eu estava planejando fazer o arquivo para outro servidor uma vez feito, mas existe uma maneira de fazê -lo em um servidor remoto? ou seja, crie um arquivo de texto em um servidor remoto e escreva para ele? Não encontrou nenhum caso desse uso. Como usar o ServerxmlHttp para substituir o Server.mappath nesta instância?
Muito obrigado pelo seu tempo.
Solução
Usando MapPath
e StreamWriter
Dessa forma, não funcionará. Isso se destina a um cenário de arquivo local. Você pode diretamente os arquivos FTP do .NET usando Ftpwebrequest.
Aqui está um exemplo de uso do FTPWebRequest para escrever um arquivo (exemplo de aqui):
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();
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow