Duvidas String

Estou quebrando a cabeça para bolar uma lógica estável.
Já programo em Java ha quase um ano e estou fazendo um sistema, Preciso de uma lógica que pegue uma string EX:

String a=“portaljva.htm”

preciso criar uma lógica para que essa string se transforme em

“portaljava.jsp”

não entendi bem mas,

String a = "blabla";
a = "pagina.jsp";

é isso?

kra explicar melhor… naum entendi direito…

vc qr só mudar depois do ponto (.)…

ou tbm qr arrumar o java q tava escrito errado???

Desculpe pelo erro moçada

Gostaria de apenas mudar os 3 últimos caracteres da String

ou seja mudar de “algumacoisa.htm” para “algumacoisa.jsp”

Obrigado pela Ajuda

tenta usar um StringTokenizer pra selecionar o conteudo da sting antes do ponto e depois vc concatena com os outros caracteres…

acredito que possa resolver:roll: :roll: :roll:
abraço

hey kadusjc funciona sim…
to postando como eu fiz…

	public static void main(String[] args) {
		StringTokenizer st = new StringTokenizer("teste.txt");
		String aux = st.nextToken(".");
		aux += ".php";
		System.out.println(aux);
		System.exit(0);
	}

assim não faz diferenca quanto ao tamanho da extensao do nome do arquivo.

Blz? :cool:
Falow[/quote]

hey kadusjc funciona sim…
to postando como eu fiz…

	public static void main(String[] args) {
		StringTokenizer st = new StringTokenizer("teste.txt");
		String aux = st.nextToken(".");
		aux += ".php";
		System.out.println(aux);
		System.exit(0);
	}

assim não faz diferenca quanto ao tamanho da extensao do nome do arquivo.

Blz? :cool:
Falow

bem inteligente sua solução!!!

eu tinha pensado em fazer substring tirando os ultimos três caractes e concatenar com uma string com uma nova extenção :wink:

æ galera…

Desculpem-me por chegar tarde com uma solução que acho bem bacana… Dêem uma olhada:

[code] String a = “portaljva.htm”;
a = a.replaceAll(“htm”, “jsp”);

  System.out.print(a);[/code]

o replacaAll busca a string desejada e substitui por outra…

Valeu,
Maicon

interessante, mas e se no meio do nome do arquivo tiver “htm”…

por exemplo “ae_htm_ae.htm”…

a solução com menos probabilidade de erro é usar StringTokenizer

Muito boa New__Radical

mas já parou pra pensar se a extensão do arquivo for maior q 3 caracteres…

e pior… tiver extensões com tamanho variados…!!!

eh um problema isso… tem q ver o q ele ta pensando em fazer… se for certeza q todas as extensões forem de 3 caracteres… a solução do New__Radical é a q melhor se encaixa…

eh soh vazer assim:

String str = "portaljava.rox.html.html";
int x = str.lastIndexOf(".");
str = str.substring(0, x) + ".jsp";

ai pode ter o q quiser no meio, pois soh vai verificar pelo ultimo ponto!

[quote=“microfilo”]interessante, mas e se no meio do nome do arquivo tiver “htm”…

por exemplo “ae_htm_ae.htm”…

a solução com menos probabilidade de erro é usar StringTokenizer[/quote]

É verdade microfilo, não tinha pensado nisso…
mas se fizesse assim:

[code] String a = “portaljva.htm”;
a = a.replaceAll(".htm", “.jsp”);

  System.out.print(a);[/code]

trocando “.htm” por “.jsp”…
Seria muito estranho ter um arquivo chamado index.htm.htm, ou algo assim…

Outra idéia seria trabalhar com slipt.

Abraço,
Maicon

E se a string tiver outro “.”? Se tiver outro “htm”??

Seus probremas se acabaram-se.

page = page.substring(0,page.length()-3) + "jsp";

Simples não?
Mas um código das: "Organizações Tabajaraaaaaaaaaaaaaaaaaaaaaaaaaaaa"
Agora com muito mais equio!!!