1

Apache Commons VFS / SFTPを使用していますが、IBMMVSシステムからファイルをダウンロードしようとしています。

ダウンロード部分はすべて良好ですが、ダウンロード後にzipファイルを開くことはできません。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);
4

2 に答える 2

0

試してみるいくつかのこと:

デフォルトはEBCDIC-ASCII変換だと思うので、BINARYオプションを指定してください。これはzipファイルに恐ろしいことをします。問題になる可能性のあるプレーンテキストファイルをダウンロードできる場合。

圧縮されたデータは、PDS など、システムが好まないものでしょうか?

このページを読んでくださいhttp://www.cbttape.org/downloadtrouble.htm

于 2010-05-26T14:19:47.650 に答える
0

私はメインフレームの専門家ではありませんが、MVS ではなく、FTP または SSH デーモンを実行する USS (Unix System Services) に接続していると思います。USS から FTP 経由でファイルをダウンロードしようとしただけで、通常の Windows FTP でファイルを交換して正常に開くことができました。バイナリはありません。したがって、EBCDIC エンコーディングでファイルを取得するとは思いません。

シンプルなテキストファイルをダウンロードしてみましたか? 特殊文字を含むテキスト ファイルをダウンロードしようとしましたか? 例: ドイツ語のウムラウトまたはその他の非 ASCII?

于 2010-05-18T07:32:09.117 に答える