Commons VFS和IBM MVS System

时间:2010-05-05 12:47:40

标签: 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);

2 个答案:

答案 0 :(得分:0)

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

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

答案 1 :(得分:0)

有几件事要尝试:

指定BINARY选项,因为我认为默认是EBCDIC-ASCII转换。这会对zip文件造成可怕的影响。如果您可以下载可能是您的麻烦的纯文本文件。

压缩数据可能是您的系统不喜欢的东西,例如PDS吗?

阅读此页http://www.cbttape.org/downloadtrouble.htm