Um leitor de legendas(srt) online, render da pagina

0 respostas
ArthurTurtle

Boa tarde!

primeiramente desculpe pelo titulo do tópico, não soube como explicar melhor.

Eu tenho um codigo que faz a leitura de um arquivo srt e vai jogando na tela, eis o codigo:

FileReader reader= new FileReader(new File("C:/Users/Apanhamentos/teste.srt"));
		BufferedReader bufferedReader= new BufferedReader(reader);
		String linha = null;  
		while((linha = bufferedReader.readLine()) != null) {
			if(linha.contains("-->")){
				comeco= linha.subSequence(0, 12).toString();
				fim= linha.subSequence(17, 29).toString();

				milessimosFim= Integer.parseInt(fim.subSequence(9, 12).toString());
				milessimosInicio = Integer.parseInt(comeco.subSequence(9, 12).toString());

				segundoInicio= Integer.parseInt(comeco.subSequence(6, 8).toString());
				segundosFim =Integer.parseInt(fim.subSequence(6, 8).toString());

				minutosFim= Integer.parseInt(fim.subSequence(3, 5).toString());
				minutosInicio = Integer.parseInt(comeco.subSequence(3, 5).toString());

				tempoTotal= Math.abs((milessimosFim-milessimosInicio))+(Math.abs(segundoInicio-segundosFim)*1000)+
						Math.abs((minutosFim-minutosInicio)*60000);
				
				System.out.println("Nova linha");
				
				Thread.sleep(tempoTotal);
			}
			
		} 
	}

O codigo pode estar meio feio, mais é so o começo.

O meu problema eh que eu quero fazer ele online, eu fiz uma app web em JSF2.0 e eu queria que ele fosse jogando na tela a legenda que ele ler(no caso a String “Nova Linha”), a minha ideia foi ele jogar a string da linha em uma List e depois joh]gar essa lista na view e ir fazendo o pool nela a cada tempo.

O problema é fazer o “atualizar” da pagina, fazendo local sem ser web eu posso fazer o Thread.sleep(tempoTotal); qua ai ele joga a proxima de a cordo com o tempo, mais e em web?
Tentei fazer o FacesContext.getCurrentInstance().renderResponse(); mais não funcionou, alguem sabe como posso “atualizar” a view todas vez q ele passar pelo if()?

obs: sei que fazendo o while no construtor ele amarra a aplicação e a resposta so vai ser mostrada na tela quando acabar o arquivo.

Não sei se fui muito claro XD

Desde de ja agradeço.

Criado 9 de janeiro de 2012
Respostas 0
Participantes 1