java - Commons VFS 和 IBM MVS 系统

标签 java unix apache-commons-vfs

我正在使用 Apache Commons VFS/SFTP,我们正在尝试从 IBM MVS 系统下载文件。

下载部分一切正常,但是下载后我们无法打开压缩文件。好像 zip 文件是使用不同的算法或其他东西压缩的

有人指点一下吗?

*注意,如果我们连接到常规的 unix/linux SFTP 服务器,相同的功能可以正常工作。

下面是我们所做的示例

                    String defaultHost = "[my sftp ip address]";
                    String host = defaultHost;
                    String defaultRemotePath = "//__root.dir1.dir2.";
                    String remotePath = defaultRemotePath;
                    String user = "test";
                    String password = "test";
                    String remoteFileName = "Blah.ZIP.BLAH";

                    log.info("FtpPojo() begin instantiation");
                    FileObject localFileObject = fsManager.resolveFile("C:/Work/Blah.ZIP.BLAH");
                    log.debug("local file name is :"+localFileObject.getName().getBaseName());
                    log.debug("FtpPojo() instantiated and fsManager created");

                    String uri = createSftpUri(host, user, password) + ":322"+remotePath+remoteFileName;
                    remoteRepo = fsManager.resolveFile(uri, fsOptions);
                    remoteRepo.copyFrom(localFileObject, Selectors.SELECT_ALL);

最佳答案

我不是大型机专家,但我假设您连接的不是 MVS,而是运行 FTP 或 SSH 守护进程的 USS(Unix 系统服务)。 我只尝试通过 FTP 从 USS 下载文件,常规 Windows FTP 可以正常交换和打开文件。但没有二进制。 因此,我不认为您会获得 EBCDIC 编码的文件。

您是否尝试过下载简单的文本文件? 您是否尝试过下载带有特殊字符的文本文件?例如德语元音变音或其他非 ASCII?

关于java - Commons VFS 和 IBM MVS 系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2773266/

相关文章:

java - 如何使用QueryDslPredicateExecutor?

java - Spring - Controller 当前页面丢失

unix - 移动具有日期编码名称的文件集

macos - 为什么找不到让我匹配多个模式?

linux - Bash - if 语句不会自动运行

gradle - 为gradle-vfs插件配置代理

java - 如何使用自动化工具检查通过网络复制的文件的完整性?

Java split()方法在Windows上无法区分 "."和 "-"

java - 实现 Hibernate Search 后 Hibernate Criteria 弃用警告

java - Apache Commons VFS - 无法解析文件