poi-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Javen O'Neal" <javenon...@gmail.com>
Subject Re: 返: The CellType of a cell which is set to String
Date Sat, 20 Aug 2016 05:40:44 GMT
I had some time and wrote the unit test and patch.
https://bz.apache.org/bugzilla/show_bug.cgi?id=60025

On Fri, Aug 19, 2016 at 8:31 AM, Javen O'Neal <javenoneal@gmail.com> wrote:
> https://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ss/usermodel/DataFormatter.java?revision=1753122&view=markup#l897
>
> Looks like it isn't being uppercased. String.valueOf(false) -> "false"
>
> Do you want to open a bug at https://bz.apache.org/bugzilla and submit
> a patch with a unit test?
>
> On Fri, Aug 19, 2016 at 12:01 AM, Young <niaomingjian@outlook.com> wrote:
>> If I use the default format of the cell(Standard) and type 'FALSE' in this cell,
then I get the value 'false' in the cell by using formatCellValue method.
>> Actually, I hope that I can get the value 'FALSE', not lowercase 'false'.
>>
>> Could I achieve this by using DataFormatter?
>>
>> On 2016-08-19 10:48 (+0800), "Javen O'Neal" <javenoneal@gmail.com> wrote:
>>> Yes. DataFormatter does what you want: get the string representation of the
>>> cell contents (numeric, date, string, boolean, blank, error, formula)
>>>
>>> On Aug 18, 2016 18:54, "陈 杨阳" <niaomingjian@outlook.com> wrote:
>>>
>>> > Actually, I want to get the value in cells and change them to String in
>>> > Java.(numeric -> String, string -> String, and so on).
>>> > Sometimes, I'm not sure what CellType it is. So I want to know the
>>> > CellType at first, and then I can convert them to String.
>>> >
>>> > As you said, I can directly use DataFormatter to convert the cell value
to
>>> > a printed String. The printed String is what I want. Am I correct?
>>> >
>>> > > -----元のメッセージ-----
>>> > > 差出人: Javen O'Neal [mailto:javenoneal@gmail.com]
>>> > > 送信日時: 2016年8月12日 23:35
>>> > > 宛先: POI Users List <user@poi.apache.org>
>>> > > 件名: Re: The CellType of a cell which is set to String
>>> > >
>>> > > To see how Excel actually saved the values, unzip the xlsx file and
open
>>> > > sheet1.xml. You should see a couple <c> elements, with a value
and type.
>>> > >
>>> > > On Aug 12, 2016 8:32 AM, wrote:
>>> > >
>>> > > The cell data format is a distinct concept from the cell value. The
>>> > format only
>>> > > defines how the value should be printed, but doesn't change the
>>> > underlying value.
>>> > >
>>> > > If you want to convert the cell value to a printed string, use
>>> > > https://poi.apache.org/apidocs/org/apache/poi/ss/
>>> > usermodel/DataFormatter.ht
>>> > > ml
>>> > >
>>> > > On Aug 12, 2016 2:59 AM, "niaomingjian@outlook.com" <
>>> > niaomingjian@outlook.com>
>>> > > wrote:
>>> > >
>>> > > Hi
>>> > >
>>> > > In a excel,
>>> > > Firstly, I typed '1' in A1, then I changed the format of this cell
to
>>> > String.
>>> > > Secondly, I changed the format of A2 to Standard(the default format),
>>> > then I
>>> > > typed '1' in this cell.
>>> > > Finally, I saved this excel.
>>> > >
>>> > > This is my excel file for test.
>>> > > I’m using poi 3.14.
>>> > > My source is very simple, as following:
>>> > > ================================================
>>> > > File file = new File("1.xlsx");
>>> > >
>>> > > Workbook wb = WorkbookFactory.create(file);
>>> > >
>>> > > Sheet sheet = wb.getSheetAt(0);
>>> > >
>>> > > System.out.println(sheet.getRow(0).getCell(0).getCellType());
>>> > > System.out.println(sheet.getRow(1).getCell(0).getCellType());
>>> > >
>>> > > wb.close();
>>> > > ================================================
>>> > >
>>> > > output:
>>> > > ============
>>> > > 0
>>> > > 1
>>> > > ============
>>> > >
>>> > > The result shows that A1's type is CELL_TYPE_NUMERIC, and A2's type
is
>>> > > CELL_TYPE_STRING.
>>> > >
>>> > > Though I set both cells to String, the results are different.
>>> > >
>>> > > In addition, in this excel, the appearance of these two cells are also
>>> > different.
>>> > > There is a green triangle at the top-right corner of A2.
>>> > >
>>> > > Could anyone explain this for me?
>>> > >
>>> > > Regards,
>>> > > Young
>>> > >
>>> > >
>>> > > ---------------------------------------------------------------------
>>> > > To unsubscribe, e-mail: user-unsubscribe@poi.apache.org For additional
>>> > > commands, e-mail: user-help@poi.apache.org
>>> >
>>> > ---------------------------------------------------------------------
>>> > To unsubscribe, e-mail: user-unsubscribe@poi.apache.org
>>> > For additional commands, e-mail: user-help@poi.apache.org
>>> >
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-unsubscribe@poi.apache.org
>> For additional commands, e-mail: user-help@poi.apache.org
>>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@poi.apache.org
For additional commands, e-mail: user-help@poi.apache.org


Mime
View raw message