java将文件中数据提取使用,如何使用java从.class文件中提取内容?

在Java编程中,如何使用java从.class文档中提取内容?

项目的目录结构如下 -

c2e4b5934ae29b42c473917541e27d7e.png

Tika的工具包可从以下网址下载:http://tika.apache.org/download.html ,只下载:tika-app-1.16.jar 和 tika-server-1.16.jar 。

以下是使用java从.class文档中提取内容的程序 -

import java.io.File;

import java.io.FileInputStream;

import java.io.IOException;

import org.apache.tika.exception.TikaException;

import org.apache.tika.metadata.Metadata;

import org.apache.tika.parser.ParseContext;

import org.apache.tika.parser.asm.ClassParser;

import org.apache.tika.sax.BodyContentHandler;

import org.xml.sax.SAXException;

public class ExtractContentFromJavaClass {

public static void main(String[] args) throws IOException,SAXException, TikaException {

//detecting the file type

BodyContentHandler handler = new BodyContentHandler();

Metadata metadata = new Metadata();

FileInputStream inputstream = new FileInputStream(new File(

"bin/ExtractContentFromJavaClass.class"));

ParseContext pcontext = new ParseContext();

//Html parser

ClassParser ClassParser = new ClassParser();

ClassParser.parse(inputstream, handler, metadata,pcontext);

System.out.println("Contents of the document:" + handler.toString());

System.out.println("Metadata of the document:");

String[] metadataNames = metadata.names();

for(String name : metadataNames) {

System.out.println(name + " : " + metadata.get(name));

}

}

}

执行上面示例代码,得到以下结果 -

Contents of the document:public synchronized class ExtractContentFromJavaClass {

public void ExtractContentFromJavaClass();

public static void main(String[]) throws java.io.IOException, org.xml.sax.SAXException, org.apache.tika.exception.TikaException;

}

Metadata of the document:

dc:title : ExtractContentFromJavaClass

resourceName : ExtractContentFromJavaClass.class

title : ExtractContentFromJavaClass

¥ 我要打赏

纠错/补充

收藏

加QQ群啦,易百教程官方技术学习群

注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值