Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Spaties verwijderen in Java

205 views
Skip to first unread message

Chris Oudeman

unread,
Dec 13, 1999, 3:00:00 AM12/13/99
to
Ik zou graag alle spaties uit een textbestand willen verwijderen,
maar string.replace('#','') werkt niet.

Rene Pijlman

unread,
Dec 13, 1999, 3:00:00 AM12/13/99
to
"Chris Oudeman" <cool...@home.nl> wrote:
>Ik zou graag alle spaties uit een textbestand willen verwijderen,
>maar string.replace('#','') werkt niet.

Wees duidelijker. Een string is een String, een textbestand is een File. Als
je prijs stelt op nuttige antwoorden dan zou je kunnen proberen om meer dan 3
seconden aan het stellen van de vraag te besteden.

Vriendelijke groet,
--
Rene Pijlman <R.Pi...@applinet.nl>
http://www.leren.nl/rubriek/computers_en_internet/software_ontwikkelen/ Leer programmeren
http://www.applinet.nl/ Informatiesystemen & Internet

Chris Oudeman

unread,
Dec 13, 1999, 3:00:00 AM12/13/99
to
> "Chris Oudeman" <cool...@home.nl> wrote:
> >Ik zou graag alle spaties uit een textbestand willen verwijderen,
> >maar string.replace('#','') werkt niet.
>
> Wees duidelijker. Een string is een String, een textbestand is een File.
Als
> je prijs stelt op nuttige antwoorden dan zou je kunnen proberen om meer
dan 3
> seconden aan het stellen van de vraag te besteden.
>
> Vriendelijke groet,
> --

Ik heb een textbestand, die lees ik in met een bufferedReader.
Ik lees dit per regel (logisch? readline). Deze regel (gelezen als string
dus) wil ik
spatie-vrij maken.
beter?

Chris Oudeman

unread,
Dec 13, 1999, 3:00:00 AM12/13/99
to
> "Chris Oudeman" <cool...@home.nl> wrote:
> >Ik zou graag alle spaties uit een textbestand willen verwijderen,
> >maar string.replace('#','') werkt niet.

A wacht, nu zie ik het. Het is een beetje onduidelijk.
Ik bedoelde, ik wil alle spaties, uiteraard uit een string vervangen,
maar string.replace(' ','') werkt niet. Ik probeer het nu met het "zoeken
van spaties" en die weghalen, maar dat lijkt me een omweg. Met een
Stringtokenizer is het me ook niet gelukt.

Chris


Hydra

unread,
Dec 13, 1999, 3:00:00 AM12/13/99
to
In article <DZ254.3910$cv1.1...@news.rdc1.ov.nl.home.com>,
cool...@home.nl barfed...

> Ik zou graag alle spaties uit een textbestand willen verwijderen,
> maar string.replace('#','') werkt niet.

Wat werkt niet? String.replace(char newChar, char oldChar) werkt prima.
Ik denk dat jij iets fout doet.

Niels
--
/*
* Mail hydr...@wxs.nl
* "One Ring to rule them all, One Ring to find them,
* One Ring to bring Them all and in the darkness bind them
* In the Land of Mordor where the Shadows lie."
*/

Hydra

unread,
Dec 13, 1999, 3:00:00 AM12/13/99
to
In article <pcf95scge35i5s89s...@4ax.com>,
R.Pi...@applinet.nl barfed...

> Wees duidelijker. Een string is een String, een textbestand is een File. Als
> je prijs stelt op nuttige antwoorden dan zou je kunnen proberen om meer dan 3
> seconden aan het stellen van de vraag te besteden.

Hierbij wil ik Rene nomineren voor een Fat-Ass award voor het geven van
de meest nuttige reply van de afgelopen week ;-)

Joost Meijer

unread,
Dec 13, 1999, 3:00:00 AM12/13/99
to
Hydra wrote:
>
> In article <DZ254.3910$cv1.1...@news.rdc1.ov.nl.home.com>,
> cool...@home.nl barfed...
> > Ik zou graag alle spaties uit een textbestand willen verwijderen,
> > maar string.replace('#','') werkt niet.
>
> Wat werkt niet? String.replace(char newChar, char oldChar) werkt prima.
> Ik denk dat jij iets fout doet.

Kijk eens naar je manier:

string.replace('#', '');

Dan wil je dus een 'niets' vervangen me '#'...
Misschien is dit beter:

string.replace('#', ' ');

???

mvg,

Joost Meijer

Mario Maccarini

unread,
Dec 13, 1999, 3:00:00 AM12/13/99
to
Chris Oudeman wrote:

>
> > "Chris Oudeman" <cool...@home.nl> wrote:
> > >Ik zou graag alle spaties uit een textbestand willen verwijderen,
> > >maar string.replace('#','') werkt niet.
>
> A wacht, nu zie ik het. Het is een beetje onduidelijk.
> Ik bedoelde, ik wil alle spaties, uiteraard uit een string vervangen,
> maar string.replace(' ','') werkt niet. Ik probeer het nu met het "zoeken
> van spaties" en die weghalen, maar dat lijkt me een omweg. Met een
> Stringtokenizer is het me ook niet gelukt.
>
> Chris


Beste Chris,

De API vermeldt: public String replace(char oldChar, char newChar) om
een
karakter in een string te vervangen met een ander karakter.

string.replace('#', '') werkt inderdaad niet, je krijgt een
compilatiefout :

Invalid character constant.
System.out.println("#" + inputLine.replace('#', '') + "#");
^
In een nieuwsgroep vermeld je dan best dat het niet compileert en geef
je er
meteen de foutboodschap bij. '' is inderdaad een ongeldige karakter
constante.

Ik vrees dat je de string zult moeten aflopen en de spaties verwijderen.
Ik heb voor jou een klein stand-alone testje gemaakt, dat blijkt te
werken:

public class TestSpatie {

public static void main (String[] args) {
String inputLine = " 1_spatie_hiervoor
7_Spaties_hiervoor_en_3_erachter ";

// De #'s dienen om te spaties vooraan en achteraan goed te zien

// Met spaties
System.out.println("#" + inputLine + "#");

// Zonder spaties
System.out.println("#" + TestSpatie.trimSpaces(inputLine) + "#");


}

public static String trimSpaces(String s) {
// Gebruik een StringBuffer ipv String voor performantie
StringBuffer result = new StringBuffer();

int len = s.length();
// Bekijk alle karakters uit de String
for (int i = 0; i < len; i++) {
char ch = s.charAt(i);

if (ch != ' ') {
// Voeg een niet-blanco karakter toe
result.append(ch);
}
}

// De string zonder spaties
return result.toString();
}
}

groeten,

Mario.

0 new messages