From adfd0d7f6c9e9ed1a0e83011f695f76ecab84a13 Mon Sep 17 00:00:00 2001 From: Javen O'Neal Date: Sun, 11 Sep 2016 03:37:56 +0000 Subject: [PATCH] bug 60025: DataFormatter should print booleans as TRUE/FALSE, not true/false git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1760219 13f79535-47bb-0310-9956-ffa450edef68 --- .../poi/ss/usermodel/DataFormatter.java | 2 +- .../poi/ss/usermodel/TestDataFormatter.java | 21 +++++++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/src/java/org/apache/poi/ss/usermodel/DataFormatter.java b/src/java/org/apache/poi/ss/usermodel/DataFormatter.java index ee6583937..61a5092f2 100644 --- a/src/java/org/apache/poi/ss/usermodel/DataFormatter.java +++ b/src/java/org/apache/poi/ss/usermodel/DataFormatter.java @@ -895,7 +895,7 @@ public class DataFormatter implements Observer { return cell.getRichStringCellValue().getString(); case BOOLEAN : - return String.valueOf(cell.getBooleanCellValue()); + return cell.getBooleanCellValue() ? "TRUE" : "FALSE"; case BLANK : return ""; case ERROR: diff --git a/src/testcases/org/apache/poi/ss/usermodel/TestDataFormatter.java b/src/testcases/org/apache/poi/ss/usermodel/TestDataFormatter.java index 649bddf9b..50276ae28 100644 --- a/src/testcases/org/apache/poi/ss/usermodel/TestDataFormatter.java +++ b/src/testcases/org/apache/poi/ss/usermodel/TestDataFormatter.java @@ -597,6 +597,27 @@ public class TestDataFormatter { } } + @Test + public void testBoolean() throws IOException { + DataFormatter formatter = new DataFormatter(); + + // Create a spreadsheet with some TRUE/FALSE boolean values in it + Workbook wb = new HSSFWorkbook(); + try { + Sheet s = wb.createSheet(); + Row r = s.createRow(0); + Cell c = r.createCell(0); + + c.setCellValue(true); + assertEquals("TRUE", formatter.formatCellValue(c)); + + c.setCellValue(false); + assertEquals("FALSE", formatter.formatCellValue(c)); + } finally { + wb.close(); + } + } + /** * While we don't currently support using a locale code at * the start of a format string to format it differently, we