yingp 7 жил өмнө
parent
commit
9d1d41d78f

+ 12 - 2
src/main/java/com/uas/report/jasperreports/engine/export/CustomJRXlsExporter.java

@@ -93,8 +93,18 @@ public class CustomJRXlsExporter extends JRXlsExporter {
 			String textStr = styledText.getText();
 			TextValue textValue = getTextValue(textElement, textStr);
 			// 类型为String,但是实际值为数值,需设置为字符串类型,否则会提示转为数值型
-			if ((textValue instanceof StringTextValue && isNumber(textStr)) || textValue instanceof NumberTextValue) {
-				baseStyle.setDataFormat(dataFormat.getFormat("@"));
+			if ((textValue instanceof StringTextValue && isNumber(textStr))
+					|| textValue instanceof NumberTextValue) {
+				if (textValue instanceof NumberTextValue && null != textElement.getPattern()) {
+					String anchorName = getConvertedPattern(textElement, ((NumberTextValue) textValue).getPattern());
+					if (null != anchorName) {
+						baseStyle.setDataFormat(dataFormat.getFormat(anchorName));
+					} else {
+						baseStyle.setDataFormat(dataFormat.getFormat("@"));
+					}
+				} else {
+					baseStyle.setDataFormat(dataFormat.getFormat("@"));
+				}
 			}
 			super.createTextCell(textElement, gridCell, colIndex, rowIndex, styledText, baseStyle, forecolor);