Вместо преобразования в последовательность, затем в целые числа, затем в строку, затем на сегодняшний день, просто получить целые числа путем сдвига и маскирования, и создать значение DateTime непосредственно из целочисленных значений:
binDate >>= 15;
int day = binDate & 31;
binDate >>= 5;
int month = binDate & 15;
binDate >>= 8;
int year = binDate + 1900;
return new DateTime(year, month, day);
-121--4631742- Я предложу вам найти код C/C + +, который выполняет аналогичную работу; затем вставьте его в C #
-121--4631744-Предположим, что вы используете Facelets, вот относительно хорошее решение:
functions.taglib.xml
в WEB-INF добавьте контекстный парам, указывающий расположение:
< context-param >
< param-name > facelets.LIBRARIES
< param-value >
/ WEB-INF/functs.taglib.xml
В xml поместите следующее:
xml version = «1.0» encoding = «UTF-8»? >
< facelet-tallib xmlns = «http://java.sun.com/JSF/Facelet» >
< пространство имен > http ://yournamespace.com/fnc
< функция >
< имя _ функции > concat имя _ функции >
< function-class > com.yourpackage.utils.Functions
< функция-подпись >
java.lang.String concat Последовательности, java.lang. Последовательность)
на странице используйте следующее:
xmlns: fnc = «http://yournamespace.com/fnc»
....
oncomplete = "# {rich:component (fnc:concat (префикс, '_examinationPanel'))} .show ()»;
наконец, в классе Function
определите простой метод:
public static Последовательности concat (String string1, Последовательность string2) {
возвращаемая строка 1.concat (строка 2);
}