🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: be.comp.programming
5 messages
5 total messages Started by Bart Vandewoestyne Fri, 02 Jan 2004 23:42
quick question
#3353
Author: Bart Vandewoestyne
Date: Fri, 02 Jan 2004 23:42
23 lines
2350 bytes
Klein simpel vraagske, 'k heb het zelf nog niet opgezocht, ma gezien ik 
er morgen pas eens ga naar zoeken toch effe hier al posten...

't Gaat in feite gewoon over 't feit dat ge in C zo uw output van printf 
kunt 'uit-aligneren' door van die % dinges te gebruiken, bv %2f en van 
die dingen, om 'zoveel karakters te voorzien' of 'op te vullen langs 
rechts' of 'op te vullen langs links'.

Kunt ge zoiets in Java eigenlijk ook op de ��n of andere manier?  'k Zou 
gewoon een simpel tekst-tabelleke willen maken met wat uitvoergegevens 
in... en de kolommekes zouden moeten even breed zijn, zelfs al bestaan 
de getallekes die in de kolommekes komen niet allemaal uit evenveel cijfers.

Groeten,
Bart (moe en koppijn hebbende, maar wel net een fijn sneeuwballengevecht 
achter de rug ;-)

-- 
Bart Vandewoestyne			Bart.Vandewoestyne_at_pandora.be
Naamsesteenweg 328 bus 201			 GSM: +32 (0)478 397 697
B-3001 Heverlee			   http://users.pandora.be/vandewoestyne
------------------------------------------------------------------------
      http://osswin.sourceforge.net --> Open Source your Windows!
Re: quick question
#3355
Author: bomberboy
Date: Sat, 03 Jan 2004 00:07
20 lines
1989 bytes
Bart Vandewoestyne schreef:

> 't Gaat in feite gewoon over 't feit dat ge in C zo uw output van printf 
> kunt 'uit-aligneren' door van die % dinges te gebruiken, bv %2f en van 
> die dingen, om 'zoveel karakters te voorzien' of 'op te vullen langs 
> rechts' of 'op te vullen langs links'.
> 
> Kunt ge zoiets in Java eigenlijk ook op de ��n of andere manier?  'k Zou 
> gewoon een simpel tekst-tabelleke willen maken met wat uitvoergegevens 
> in... en de kolommekes zouden moeten even breed zijn, zelfs al bestaan 
> de getallekes die in de kolommekes komen niet allemaal uit evenveel cijfers.

quick reply:

<http://java.sun.com/docs/books/tutorial/i18n/format/index.html>

-- 
Bruno

"I'd love to go out with you, but I'm having all my plants neutered."
Re: quick question
#3357
Author: Bart Vandewoestyne
Date: Sat, 03 Jan 2004 01:33
22 lines
1997 bytes
bomberboy wrote:

> 
> quick reply:
> 
> <http://java.sun.com/docs/books/tutorial/i18n/format/index.html>

Tnx voor de 'richtingaanwijzer', dit is denk ik wat ik nodig heb:

http://java.sun.com/docs/books/tutorial/i18n/format/decimalFormat.html

Zal morgen (vandaag dus ;-) eens proberen.

Greetzzz,
mc303

-- 
Bart Vandewoestyne			Bart.Vandewoestyne_at_pandora.be
Naamsesteenweg 328 bus 201			 GSM: +32 (0)478 397 697
B-3001 Heverlee			   http://users.pandora.be/vandewoestyne
------------------------------------------------------------------------
      http://osswin.sourceforge.net --> Open Source your Windows!
Re: quick question
#3362
Author: Bart Vandewoestyne
Date: Sat, 03 Jan 2004 20:29
43 lines
2563 bytes
Bart Vandewoestyne wrote:
> 
> Tnx voor de 'richtingaanwijzer', dit is denk ik wat ik nodig heb:
> 
> http://java.sun.com/docs/books/tutorial/i18n/format/decimalFormat.html
> 
> Zal morgen (vandaag dus ;-) eens proberen.

hmm... raar... ik specifieer hier:

DecimalFormat myFormatter1 = new DecimalFormat("###");

En ik denk dus dat als ik voor de waarde dan een 1 invul, ik zal krijgen:

   1  (dus met twee spaties vooraan)

dus niet

1    (zonder spaties ervoor)

En dat is dus niet het geval.  Als ik

DecimalFormat myFormatter1 = new DecimalFormat("000");

gebruik, dan krijg ik uiteraard wel

001

Maar dat is dus niet wat ik wil... die nullen zouden moeten vervangen 
worden door spaties...

Hoe doe je zoiets?  Spaties invullen in die Decimalformat("   ") lukt 
ook niet...

Groeten,
Bart

-- 
Bart Vandewoestyne		      Bart.Vandewoestyne_at_pandora.be
Naamsesteenweg 328 bus 201		       GSM: +32 (0)478 397 697
B-3001 Heverlee				 http://osswin.sourceforge.net
----------------------------------------------------------------------
"Theory is the general; experiments are the soldiers." (Leonardo da Vinci)
Re: quick question
#3363
Author: bomberboy
Date: Sat, 03 Jan 2004 22:31
66 lines
3458 bytes
Bart Vandewoestyne schreef:

> Bart Vandewoestyne wrote:
>> 
>> Tnx voor de 'richtingaanwijzer', dit is denk ik wat ik nodig heb:
>> 
>> http://java.sun.com/docs/books/tutorial/i18n/format/decimalFormat.html
>> 
>> Zal morgen (vandaag dus ;-) eens proberen.
> 
> hmm... raar... ik specifieer hier:

Niet raar, het werkt zoals beschreven :)

> DecimalFormat myFormatter1 = new DecimalFormat("###");
> 
> En ik denk dus dat als ik voor de waarde dan een 1 invul, ik zal krijgen:
> 
>    1  (dus met twee spaties vooraan)
> 
> dus niet
> 
> 1    (zonder spaties ervoor)

Inderdaad, '#' wil zeggen dat het getal wordt ingevuld als er ook echt een
getal is, indien niet, dan wordt er niets ingevuld.

> En dat is dus niet het geval.  Als ik
> 
> DecimalFormat myFormatter1 = new DecimalFormat("000");
> 
> gebruik, dan krijg ik uiteraard wel
> 
> 001

Inderdaad, '0' wil zeggen dat het getal altijd in de output terecht komt,
is het er niet, dan staat er 0.

> Maar dat is dus niet wat ik wil... die nullen zouden moeten vervangen 
> worden door spaties...
> 
> Hoe doe je zoiets?  Spaties invullen in die Decimalformat("   ") lukt 
> ook niet...

Voor zover ik weet kan dat niet met de huidige versie van DecimalFormat en
zal je dat moeten omzeilen.
En dat verschilt een beetje afhankelijk van het pattern.
Als je '####' wou, kan je gewoon er x aantal spaces gaan voorplakken.  Als
je iets hebt als '####.##' wil je misschien ook rekening houden met de
plaats van de komma/punt (zodat ze allemaal onder elkaar staan).

<http://www.accd.edu/pac/computer/jurkovic/java_programming_examples.html#betterFormatColumns>
Dit is een mogelijke oplossing.  Belangrijk om op te merken is dat er
gebruik gemaakt wordt van het formatteringspatroon.  Op die manier moet je
maar op 1 plaats iets gaan wijzigen indien je dit patroon gaat wijzigen.
En je houdt er best ook rekening mee dat het getal groter zou kunnen zijn
dan '####' (als je dan 12345 hebt is de output van format ook 12345 en
niet 2345).

Mits wat zoeken kan je misschien zelfs ergens een bestaande uitgebreide
Decimalformati-implementatie vinden.

-- 
Bruno

Excellent day for putting Slinkies on an escalator.
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads