我正在使用Apache POI来尝试读取word文件,但即使您使用过Apache POI,这仍然应该是可以回答的。在HWPF.extractor包中有两个对象,WordExtractor和Word6Extractor,旧版Microsoft Word格式的文本提取器。我试图使用try catch语句来尝试WordExtractor对象。然后,如果它抛出错误,它应该在抛出异常之前尝试Word6Extractor。
我已经尝试过这个:
try{
WordExtractor example = new WordExtractor(...);
} try{
Word6Extractor example = new Word6Extractor(...);
} catch(Exception e)
{
//code to alert user to bad file type
}
如果还有什么需要知道的,请告诉我,我会尽力提供。
答案 0 :(得分:1)
我认为你的代码唯一不对的就是语法!虽然使用控制流的异常非常混乱,并且通常是糟糕的编码实践(或者我已经被教过),但我相信这应该可以解决问题:
try{
WordExtractor example = new WordExtractor(...);
} catch (Exception e){
// If there is an exception thrown, we run the next block of code
try
{
Word6Extractor example = new Word6Extractor(...);
} catch(Exception e)
{
//code to alert user to bad file type
}
}
希望这可以解决它!