2

これは、同じサーバーにあるファイルに対して現在持っているものであり、機能します。

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()

完了したらファイルを別のサーバーに FTP 送信することを計画していましたが、リモート サーバーでそれを行う方法はありますか? つまり、リモート サーバー上にテキスト ファイルを作成し、それに書き込みますか? その使用例は見つかりませんでした。このインスタンスで ServerXMLHTTP を使用して Server.MapPath を置き換えるにはどうすればよいですか?

お時間をいただきありがとうございました。

4

1 に答える 1

2

MapPathStreamWriterこの方法を使用するとうまくいきません。これは、ローカル ファイルのシナリオを対象としています。FtpWebRequestを使用して、.net から直接 FTP ファイルを送信できます。

FtpWebRequest を使用してファイルを書き込む例を次に示します (ここからの例)。

        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();
于 2010-03-21T14:06:36.897 に答える