Как получить Excel математические операторы книги с использованием Apache POI 3.6? - PullRequest
0 голосов
/ 02 декабря 2010

В моем приложении я хочу, чтобы все операторы, которые поддерживает Excel WorkBook, использовали apache poi 3.6 ...

Пожалуйста, сообщите мне, как решить эту проблему правильно?1005 *

1 Ответ

4 голосов
/ 31 марта 2011

Все реализованные функции должны быть найдены в пакете org.apache.poi.ss.formula.functions : http://poi.apache.org/apidocs/org/apache/poi/ss/formula/functions/package-summary.html

FunctionEval хранит регистрацию всех функций, что может быть лучшим местом для просмотра их всех в виде списка: https://svn.apache.org/repos/asf/poi/trunk/src/java/org/apache/poi/ss/formula/eval/FunctionEval.java

Поскольку вы упомянули, что хотите знать их только для Apache POI 3.6, вам нужно проверить исходный код этой версии, а не транк! Либо загрузите исходный выпуск, либо вы можете найти источник в SVN


С другой стороны, если вы можете перейти на более новую копию Apache POI, более поздние версии предоставляют способ запрашивать функции с реализациями во время выполнения!

Теперь вы можете использовать FunctionEval.getSupportedFunctionNames () метод , чтобы получить список функций, которые реализованы в вашей версии Apache POI. Чтобы получить список функций, для которых POI знает о существовании, но не имеет реализации, вам необходим связанный FunctionEval.getNotSupportedFunctionNames () метод . Обратите внимание, что последнее не будет исчерпывающим, так как если POI не знает имя функции, он не сможет сказать вам, что это не так! Наконец, для функции Analysis ToolPak есть соответствующий набор доступных методов. Это AnalysisToolPak.getSupportedFunctionNames () и AnalysisToolPak.getNotSupportedFunctionNames ()

...