Commit b188ea55 authored by yanzg's avatar yanzg

接口文档的支持

parent 401aa224
......@@ -20,6 +20,7 @@ import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.regex.Pattern;
/**
* 控制台导出程序
......@@ -28,6 +29,7 @@ import java.util.Map;
* @author 颜佐光
*/
public class ExcelConsole<T extends Object> implements DbRow<T> {
private Pattern chinese = Pattern.compile("[\u4e00-\u9fa5]");
/**
* 配置信息
*/
......@@ -301,10 +303,6 @@ public class ExcelConsole<T extends Object> implements DbRow<T> {
String columnName = column.getName();
String value = StringHelper.getFirst(rowHandle.get(t, columnName));
// 获取字节数、用于设置最大宽度
int maxBytes = Math.max(columnBytes.getOrDefault(columnPos, 0), value.getBytes().length);
columnBytes.put(columnPos, maxBytes);
// 当不需要合并历史记录时,则创建新的内容
Cell cell = createCell(row, columnPos, value);
// 判断列是否需要合并
......@@ -420,6 +418,12 @@ public class ExcelConsole<T extends Object> implements DbRow<T> {
* @return
*/
private Cell createCell(Row row, int column, String content) {
// 获取字节数、用于设置最大宽度
int chinaCount = chinese.matcher(content).groupCount();
int bytes = (content.length() - chinaCount) + (int) Math.round(chinaCount * 1.5);
int maxBytes = Math.max(columnBytes.getOrDefault(column, 0), bytes);
columnBytes.put(column, maxBytes);
Cell cell = row.createCell(column);
cell.setCellStyle(style);
cell.setCellValue(content);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment