0

本当に「put」がファイルを宛先に置くことに成功したかどうか知りたいです。何らかの理由でファイルが宛先に配置されない場合[おそらくスペースの制約などの宛先サーバーの問題が原因で]それを知る必要があります。

コード:

    private static boolean putFile(String m_sLocalFile, FtpClient m_client) {
            boolean success = false;
    int BUFFER_SIZE = 10240;
    if (m_sLocalFile.length() == 0) {
        System.out.println("Please enter file name");
    }
    byte[] buffer = new byte[BUFFER_SIZE];
    try {
        File f = new File(m_sLocalFile);
        int size = (int) f.length();
        System.out.println("File " + m_sLocalFile + ": " + size + " bytes");
        System.out.println(size);
        FileInputStream in = new FileInputStream(m_sLocalFile);
        OutputStream out = m_client.put(f.getName());

        int counter = 0;
        while (true) {
            int bytes = in.read(buffer);
            if (bytes < 0)
                break;
            out.write(buffer, 0, bytes);
            counter += bytes;
            System.out.println(counter);
        }

        out.close();
        in.close();
    } catch (Exception ex) {
        System.out.println("Error: " + ex.toString());
    }
          return success;
}
4

1 に答える 1

0

私はそれがを投げることを期待しIOExceptionます。そうではないと信じる理由はありますか?ただし、そのクラスを直接使用するのではなく、 .を呼び出した後、ftp:URLとそのクラスを使用してI/Oを実行する必要があります。URLConnectionsetDoOutput(true)

于 2012-04-05T08:09:42.777 に答える