Remove todas as ocorrências de char da string

Eu posso usar isso:

String str = "TextX Xto modifyX"; str = str.replace('X','');//that does not work because there is no such character '' 

Existe uma maneira de remover todas as ocorrências do caractere X de uma String em Java?

Eu tentei isso e não é o que eu quero: str.replace('X',' '); //replace with space str.replace('X',' '); //replace with space

Tente usar a sobrecarga que aceita argumentos CharSequence (por exemplo, String ) em vez de char :

 str = str.replace("X", ""); 

Usando

 public String replaceAll(String regex, String replacement) 

vai funcionar.

O uso seria str.replace("X", ""); .

Executando

 "Xlakjsdf Xxx".replaceAll("X", ""); 

retorna:

 lakjsdf xx 

Se você quiser fazer algo com Java Strings, o Commons Lang StringUtils é um ótimo lugar para procurar.

 StringUtils.remove("TextX Xto modifyX", 'X'); 
 String test = "09-09-2012"; String arr [] = test.split("-"); String ans = ""; for(String t : arr) ans+=t; 

Este é o exemplo de onde eu removi o caractere – da String.

Eu gosto de usar o RegEx nesta ocasião:

 str = str.replace(/X/g, ''); 

onde g significa global, então passará por toda a sua string e replaceá todo o X por ”; Se você quiser replace X e X, simplesmente diga:

 str = str.replace(/X|x/g, ''); 

(veja meu violino aqui: violino )

Olá Experimente este código abaixo

 public class RemoveCharacter { public static void main(String[] args){ String str = "MXy nameX iXs farXazX"; char x = 'X'; System.out.println(removeChr(str,x)); } public static String removeChr(String str, char x){ StringBuilder strBuilder = new StringBuilder(); char[] rmString = str.toCharArray(); for(int i=0; i 

Use replaceAll ao invés de replace

 str = str.replaceAll("X,""); 

Isso deve dar a resposta desejada.

 package com.acn.demo.action; public class RemoveCharFromString { static String input = ""; public static void main(String[] args) { input = "abadbbeb34erterb"; char token = 'b'; removeChar(token); } private static void removeChar(char token) { // TODO Auto-generated method stub System.out.println(input); for (int i=0;i 

Você pode usar str = str.replace("X", ""); como mencionado antes e você vai ficar bem. Para sua informação, '' não é um caracter vazio (ou válido), mas '\0' é.

Então você poderia usar str = str.replace('X', '\0'); em vez de.