Apache Tika从FTP文件流解析

时间:2016-05-26 16:57:10

标签: java ftp apache-tika

我使用Apache Tika解析器使用以下代码读取本地文件系统中文件的内容

          ContentHandler textHandler = new BodyContentHandler();
          Metadata metadata = new Metadata();
          ParseContext context = new ParseContext();
          InputStream input = new FileInputStream(file);

          try {
            _autoParser.parse(input, textHandler, metadata, context);
          } catch (Exception e) {

            log(String.format("File %s failed", file.getCanonicalPath()));
            e.printStackTrace();
            continue;
          }

          list.add(textHandler.toString);

现在我想从FTP位置获取文件,有没有什么方法可以在运行时对FTP中的文件进行解析而不将它们下载到任何位置。

1 个答案:

答案 0 :(得分:1)

尝试使用Apache Commons Net库来获取FTP文件的InputStream。

示例:

    String server = "www.myserver.com";
    int port = 21;
    String user = "user";
    String pass = "pass";

    FTPClient ftpClient = new FTPClient();

    ftpClient.connect(server, port);
    ftpClient.login(user, pass);
    InputStream inputStream = ftpClient.retrieveFileStream("/test/test1.txt");