Eliminar espacios en blanco con Java Octubre 7, 2007
Publicado por lineadecodigo en : Java , trackbackCon el lenguaje Java podemos eliminar espacios en blanco de una cadena de diferentes formas. En este ejemplo vamos a ver como hacerlo de dos formas. La primera será recorriendo la cadena y buscando los espacios en blanco y la segunda será mediante el método Java .stringTokenizer().
La primera forma sería la más rustica. El método consistiría en recorrer la cadena. Usaremos el método Java .length() para conocer el tamaño máximo de la cadena y un bucle for para recorrerla.
Mientras recorremos la cadena vamos creando una nueva cadena a la cual solamente anexaremos caracteres que sean diferentes al espacio en blanco. La forma de obtener un carácter de una determinada posición de la cadena es mediante el método Java .charAt(posicionEnCadena).
for (int x=0; x < sTexto.length(); x++) {
if (sTexto.charAt(x) != ' ')
sCadenaSinBlancos += sTexto.charAt(x);
}
Otra forma sería usando el método Java StringTokenizer. Este método crea un array de elementos a partir de una cadena. Usando como separador el carácter que se le pase como parámetro.
En caso de no pasarle separador asume que el espacio en blanco será dicho separador. Solamente nos quedará recorrer el array y concatenar el contenido en una nueva cadena.
StringTokenizer stTexto = new StringTokenizer(sTexto); while (stTexto.hasMoreElements()) sCadenaSinBlancos += stTexto.nextElement();
Visualizar el ejemplo | Descargar el código
Articulos Similares:
- Listar caracteres de una cadena con Java
- Contar palabras en Java
- Java y la palabra más larga de una frase
- Obtener un carácter de una cadena con Java
- Contador de Ocurrencias en Java
Enviar entrada por email
|
Imprimir
| 29468 visitas





Comentarios»
StringTokenizer uno de los mas practicos metodos para eliminar espacios en blanco y de gran utilidad para la captura de datos de cualquier tipo, exelente explicación.
Las cadenas no se deben concatenar, usa StringBuilder o StringBuffer para manejar cadenas.
como puedo crear un metodo en bluej en la clase Notebook que me permita borrar las notas lamacenadas en el metodo
public int numberOfNotes()
{
return notes.size();
}
ESTE METODO ESTA BIEN
PERO QUISIERA OTRO METODO DONDEN ELIMINARA LOS ESPASIO EN LA MISMA CADENA OSE SIN NESECIDAD DE DECLARAR OTRA CADENA.+
GRAIAS…
String.trim();
@knk,
String.trim() solo elimina los espacios en blanco del principio y del final. No si tienes espacio en medio.
dudo mucho que se pueda hacer en la misma variable, pero StringBuffer es mucho mas eficiente que concatenar Strings como dijo penyaskit
pues yo lo ago mas rapido utilizo replaceAll
ejem
String cadena=”asdfas df asd f asd asdf “;
System.out.println(caca.replaceAll(” “, “”));
muy interesante pero si por el contrario deseo poner espacios en blanco despues de 4 caracteres en una frase donde le quie los espacios peor ahora ordenar sus letras en 4 caracteres y ahi poner el espacio en blanco
Alguien podría explicar como se aplica lo q dice este post? yo no sé mucho de programación, estoy intentando armar una página a través de blogger, del modo más profesional posible, incluí un formulario en un post del blog, y el mismo me aparece un metro debajo del título del post lo cual queda, se imaginaran, bastante mal. Cómo aplico esto q explican para solucionarlo? o sea, me dan código y ni siquiera se donde se debe poner, o cómo se debe poner… Quiza alguien pueda contestar esta inquietud, ya me rendí..
Hay otra forma bastante sencilla que es crear un array de string y luego efectuar un split de espacios en blanco metiendo el resultado (las palabras cortadas) en dicho array. Posteriormente, metes en otra variable String el resultado de concatenar todas las celdas del array.
si se puede en la misma variable
String sPalabra=br.readLine().replace(” “,”");
teniendo en cuenta que el radline es porque esa palabra se ingresara por teclado o bien si es una cadena cualquiera seria asi:
String sPalabra=”a b c d e f g h “.replace(” “,”");
mi pregunta es:
tengo una variable con espacios la cual voy a meter a una lista pero quiero en la lista entre sin espacios y que al imprimir la variable quede tal cual con espacios. si me hago entender?
quisiera saber como borrar un determinado numero de caracteres de una cadena en java
victor, para borrar caracteres tambien funciona el metodo replace(), solo pones tantos como necesites en la variable ej (ingresada por teclado):
String Palabra=br.readLine().replace(” “,””).replace(”@“,””).replace(”#“,””);
o bien (por cadena);
String Palabra=”@ # %“.replace(” “,””).replace(”@“,””).replace(”#“,””)…etc;
ojala te sirva, nos vemos.
hola necesito q me ayuden… debo hacer un metodo recursivo q recibe un string, debo eliminar los blancos y el siguiente caracter de cada blanco colocar en mayuscula…. ejm “estoy en clase” de retornar “EstoyEnClase”
tal ves o sea de mi incumbencia, pero , Paola ya viste la fecha del ultimo mensaje, jeje. Ademas creo q todo el aporte de los q han comentado t servira a resolver tu duda, si no me cachas, analiza el método String.replace(), y un par de los comentarios anteriores. Suerte
A ver a ver, si quieren eliminar espacios en blanco y que quede una sola cadena solo una linea no se compliquen
String frase = “esta es una cadena con espacios en blanco”;
System.out.println(frase.replace(” “,”"));
Resultado:
estaesunacadenaconespaciosenblanco
kenny lo que dices es practicamente lo que hemos dicho a lo largo del tema no? jejeje
Seria bueno Conocer como quitar solo los espacios en blanco que se encuentran al final de la cadena y no los del principio, trim quita ambos pero como quitar solo los ultimos?
Siempre recurro a esta página para aclarar cualquier duda en la elaboración de algún programa en Java, de verdad es muy entendible las explicaciones.
Felicitaciones!!!
@Merey16,
Me alegro que sea de ayuda.
muy bueno recien lo entendi jeje ta bien ah y para crear un codigo autogenerado de nombre fecha y apellidos con sus ultimas 2 letras de los campos dados