Android 向FTP服务器中的文件添加内容而不删除旧数据?

Android 向FTP服务器中的文件添加内容而不删除旧数据?,android,ftp,apache-commons-net,ftp-server,Android,Ftp,Apache Commons Net,Ftp Server,我正在使用下面的代码连接到服务器并发送文件。问题是文件可能会随着时间的推移而变大,因此我想: 将名为“file”的文件发送到服务器 下次我在文件“file”中写入时,我将删除旧内容并写入新数据 我希望将与旧文件名“file”相同但新内容不同(因为旧内容已被重写)的新文件发送到服务器 是否可以执行以下操作:我是否可以获取与我发送的文件同名的文件“file”,并将新文件添加到旧文件的末尾,以合并这两个内容,而不是替换为新文件 这是我将文件发送到服务器的方式: StrictMode.ThreadPol

我正在使用下面的代码连接到服务器并发送文件。问题是文件可能会随着时间的推移而变大,因此我想:

  • 将名为“file”的文件发送到服务器

  • 下次我在文件“file”中写入时,我将删除旧内容并写入新数据

  • 我希望将与旧文件名“file”相同但新内容不同(因为旧内容已被重写)的新文件发送到服务器

  • 是否可以执行以下操作:我是否可以获取与我发送的文件同名的文件“file”,并将新文件添加到旧文件的末尾,以合并这两个内容,而不是替换为新文件

    这是我将文件发送到服务器的方式:

    StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
    
    StrictMode.setThreadPolicy(policy);
    FTPClient con = null;
    FileInputStream fileIn= null;
    //Find the directory for the SD Card using the API
    File sdcard = Environment.getExternalStorageDirectory();
    
    //Get the text file
    File file = new File(sdcard,"file");
    
    try {
        con = new FTPClient();
        con.connect("****************", **);
        showServerReply(con);
    
        if (con.login("***********", "*******")) {
            con.enterLocalPassiveMode();
            con.setFileType(FTP.BINARY_FILE_TYPE);
            String data=String.valueOf(Environment.getExternalStorageDirectory())+"/file";
            fileIn = new FileInputStream(new File(data));
    
            boolean result = con.storeFile("/"+android.os.Build.MODEL+".txt", fileIn);
            fileIn.close();
            con.logout();
            con.disconnect();
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
    

    只需将您的
    storeFile
    调用替换为

    boolean result = con.appendFile("/"+android.os.Build.MODEL+".txt", fileIn);