From d52b24dae0d06803b1c624dfeede975cd694b0d0 Mon Sep 17 00:00:00 2001 From: Yegor Kozlov Date: Mon, 27 Feb 2012 15:29:26 +0000 Subject: [PATCH] follow-on to r1294180 git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1294186 13f79535-47bb-0310-9956-ffa450edef68 --- .../org/apache/poi/ss/util/WorkbookUtil.java | 85 ++++++++++++------- 1 file changed, 54 insertions(+), 31 deletions(-) diff --git a/src/java/org/apache/poi/ss/util/WorkbookUtil.java b/src/java/org/apache/poi/ss/util/WorkbookUtil.java index 8008844b8..71ad99e69 100644 --- a/src/java/org/apache/poi/ss/util/WorkbookUtil.java +++ b/src/java/org/apache/poi/ss/util/WorkbookUtil.java @@ -45,40 +45,63 @@ public class WorkbookUtil { * @return a valid string, "empty" if to short, "null" if null */ public final static String createSafeSheetName(final String nameProposal) { - if (nameProposal == null) { - return "null"; - } - if (nameProposal.length() < 1) { - return "empty"; - } - final int length = Math.min(31, nameProposal.length()); - final String shortenname = nameProposal.substring(0, length); - final StringBuilder result = new StringBuilder(shortenname); - for (int i=0; i + * Rules: + * + * + * @param nameProposal can be any string, will be truncated if necessary, + * allowed to be null + * @param replaceChar the char to replace invalid characters. + * @return a valid string, "empty" if to short, "null" if null + */ + public final static String createSafeSheetName(final String nameProposal, char replaceChar) { + if (nameProposal == null) { + return "null"; + } + if (nameProposal.length() < 1) { + return "empty"; + } + final int length = Math.min(31, nameProposal.length()); + final String shortenname = nameProposal.substring(0, length); + final StringBuilder result = new StringBuilder(shortenname); + for (int i=0; i