Zip 文件上传到服务器时损坏

2024-01-02

我的 java 程序将 zip 文件从我的系统上传到 FTP 服务器。uploadfile()是一个包含上传代码的函数。

uploadfile("192.168.0.210","muruganp","vm4snk","/home/Admin/GATE521/LN_RB_Semivalid2junk/Output/"+date+"_RB1.zip","/文件服务器/文件备份/Mac/"+date+ “_RB1.zip”);

public static boolean uploadfile(String server, String username,
        String Password, String source_file_path, String dest_dir) {
    FTPClient ftp = new FTPClient();
    try {
        int reply;
        ftp.connect(server);
        ftp.login(username, Password);
        System.out.println("Connected to " + server + ".");
        System.out.print(ftp.getReplyString());
        reply = ftp.getReplyCode();
        if (!FTPReply.isPositiveCompletion(reply)) {
            ftp.disconnect();
            System.err.println("FTP server refused connection.");
            return false;
        }
        System.out.println("FTP server connected.");
        InputStream input = new FileInputStream(source_file_path);
        ftp.storeFile(dest_dir, input);
        System.out.println(ftp.getReplyString());
        input.close();
        ftp.logout();
    } catch (Exception e) {
        System.out.println("err");
        e.printStackTrace();
        return false;
    } finally {
        if (ftp.isConnected()) {
            try {
                ftp.disconnect();
            } catch (Exception ioe) {}
        }
    }
    return true;
}

我系统中的 zip 文件是完美的。但是在服务器位置上传相同的内容后,下载相同的内容并解压就会出现问题。错误提示“文件已损坏”。我应该怎么做才能解决这个问题。请就此提出建议。

我怀疑问题可能是通过 ASCII 模式传输。它实际上应该按照此通过二进制模式传输QUESTION https://stackoverflow.com/questions/1903442/files-are-getting-corrupted-via-ftp-client-upload。如何达到同样的效果?请指教。


最好的猜测是 FTP 上传使用的是 ascii 模式,这会损坏 zip 等二进制文件。验证这一点,如果是这样,请将其更改为二进制模式。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Zip 文件上传到服务器时损坏 的相关文章

随机推荐

  • sql联合顺序

    我有一张桌子 上面有学生的姓名和身高 我想要一个查询 按字母顺序对身高高于 150 厘米的学生进行排序 对身高低于 150 厘米的学生按姓名降序排列 像这样的东西 select from students where height gt 1
  • Visual Studio:是否对整个解决方案进行增量搜索?

    我非常喜欢 Visual Studio 中内置的键盘快捷键 我最喜欢的之一是Ctrl i 这会触发增量搜索 当我填写搜索词时 它会跳过当前文档中的文本 输入所需的搜索词后 我使用F3跳过比赛 它工作正常 除了仅限于搜索当前文件 此外 触发增
  • 我是否应该将“贷款”、“采购”和“销售”表非规范化为一张表?

    根据我在下面提供的信息 您能否就将单独的表非规范化为一个包含不同类型合约的表是否是个好主意发表意见 优点 缺点是什么 有没有人尝试过这样做之前 银行系统使用 CIF 客户信息文件 主 客户可能拥有不同类型的账户 CD 抵押贷款等 并使用交易
  • 向 Swift 2 中的类添加“for...in”支持

    这个问题 https stackoverflow com questions 24099227 add for in support to iterate over swift custom classes早期版本的 Swift 已经得到了
  • 如何在 Swift 中发出 NSURLSession POST 请求

    你好 我是 Swift 的初学者 我正在尝试让 NSURLSession Post 请求发送一些参数 如下面的代码 根据我的下面的代码响应不是来自服务器 有人可以帮助我吗 背景类别 import UIKit protocol sampleP
  • 致命的 Python 错误:无法从堆栈溢出中恢复

    我在互联网上读到类似的问题 但没有一个答案可以帮助我 我有一个函数 对于每一行数据 数据大约有 2 000 000 行 执行一些操作 然后根据它所做的操作使用不同的参数调用相同的函数 问题是 过了一会儿 我在终端中收到此错误 致命的 Pyt
  • nvd3 工具提示十进制格式

    我正在使用 nvd3 显示折线图 格式化工具提示内容时遇到一些问题 这是我用来设置 y 轴文本格式的行 chart1 yAxis tickFormat d3 format 02f 但是 它仅对 y 轴有效 如果有一个像 44 123231
  • android startActivity 来自服务中的意图[重复]

    这个问题在这里已经有答案了 我尝试在服务中使用意图 但是当我尝试这样做时 Intent intent facebook new Intent this MainUploadToYoutube class intent facebook pu
  • Instagram新API,通过标签获取项目

    上个月 Instagram API 更新了 我不明白如何使用它 例如我想通过标签获取图像nexus5x 我确实请求https api instagram com v1 tags nexus5x access token access tok
  • 将背景图像 (SVG) 拉伸至 100% 宽度和 100% 高度?

    我想要实现的行为是宽度background size cover 但高度为background size contain 通过拉伸图像 我以为background size 100 应该这样做 但看看这个例子 它没有 container b
  • 使用 include 动态指向 HTML

    我想基于变量指向不同的 HTML 文件 我使用以下格式的 include include templates case cid intro html 这会引发错误 TemplateNotFound templates case cid in
  • Oracle ojdbc8 12.2.0.1 被 Maven 禁止

    Oracle ojdbc8 12 2 0 1禁止自 2017 年 12 月起由 Maven 提供 在此之前效果良好 Oracle 存储库 setting xml 上的哪些配置已更改 Maven 项目 https github com sgr
  • 使用不同的 JSON 对象填充 ViewPager 中的每个片段,而无需再次加载

    我有一个ViewPager有一个Fragment其中包含一个 GridView仅当我延迟滚动页面并且每次再次从互联网检索内容时 我的代码才能正常工作我想做的只是获取每个页面内容一次并在用户滚动页面时使用它我的问题之一是 JSON 下载sim
  • swift中的dispatch_group_leave崩溃

    这种情况很少发生 这是堆栈跟踪的最后一行 0 libdispatch dylib 0x0000000197a85a9c dispatch group leave 48 dispatch group leave 在一个完整的闭包中被调用 调用
  • 分组时覆盖箱线图中的下限、上限等

    默认情况下 对于下 中和上分位数geom boxplot考虑 25 50 和 75 分位数 这些是从计算得出的y 但可以通过美学参数手动设置lower upper middle 还提供x ymin and ymax和设置stat ident
  • 如何在 jUnit 测试用例中闯入调试器?

    我正在一个大型 java 项目中调试单元测试 我需要运行 ant test 来启动测试套件 所以我很难从 IDE 启动它 如果它附加到任何调试器 是否可以调用 C 中的 Debugger Break 之类的函数来中断调试器 如果我正确理解你
  • 子字符串并返回特定字符后的值

    测试 BSMain 文本 起始页 我想对上面的值进行子串并只返回后面的值 在 VB NET 中 我怎样才能做到这一点 假设没有错误检查 Dim phrase As String Testing BSMain Text Start Page
  • c fscanf 错误检查

    我正在使用 fscanf 从 C 中的文件中读取 我只是想知道我是否正确检查了所有错误条件 这是最可靠的方法 而且我没有遗漏任何内容 FILE fp char filename untitled int count char item1 1
  • Rust 中单元类型的用途是什么?

    铁锈具有单位类型 具有单个零大小值的类型 该单位类型的值也可以使用指定 单位类型及其值的目的是什么 这是一种避免使用的机制吗null or nil 像其他语言一样 是类型的值 它的目的就是无用 Rust 中的一切都是一个表达式 返回 not
  • Zip 文件上传到服务器时损坏

    我的 java 程序将 zip 文件从我的系统上传到 FTP 服务器 uploadfile 是一个包含上传代码的函数 uploadfile 192 168 0 210 muruganp vm4snk home Admin GATE521 L