0

ftplibに関数を書きましたappend_line()(storelines() に基づく):

def append_line(self, cmd, string):
    self.voidcmd('TYPE A')
    conn = self.transfercmd(cmd)
    conn.sendall(string)
    conn.close()

    return self.voidresp()

私が電話するとき:

ftp.append_line("APPE " + "Text.dat", "This is my string\n\n")

上記のファイルに文字列を追加しますが、改行は無視します。だから、socket.sendall文字を無視しています\n

改行文字でファイルを適切に更新するにはどうすればよいですか?

4

2 に答える 2

1

別の問題があるようです。私があなたの文字列でsendallをしようとすると、それは機能しているように見えます:

クライアントコード:

    from socket import *
    s=socket(AF_INET, SOCK_STREAM)
    s.connect(("localhost", 6789))
    string = "This is my string\n\nAFTER_IT"
    s.sendall(string)

サーバーコード:

    from socket import *
    s=socket(AF_INET, SOCK_STREAM)
    s.bind(("", 6789))
    s.listen(8)
    (c, a) = s.accept()
    data=c.recv(1000)
    data # Displays 'This is my string\n\nAFTER_IT'
于 2012-02-15T19:34:55.377 に答える
1

"\r\n\r\n"の代わりに送信してみてください"\n\n"

于 2012-02-15T19:01:55.223 に答える