Apagar num File

2 respostas
T

aloha…

Eu estou a ler de um ficheiro do seguinte modo… mas precisava de há medida que lia apagava do File… Como eu faço isso ?

private void readPlayer(String playerName) {
		BufferedReader br;
		StringTokenizer stringT;
		String line;
		try {
			br = new BufferedReader(new FileReader(filename));

			while ((line = br.readLine()) != null) {
				stringT = new StringTokenizer(line);
				while (stringT.hasMoreTokens()) {
					if (stringT.nextToken().equalsIgnoreCase(playerName)) {
						playerNameValue.setText(playerName);
						numberGamesTotalValue.setText(stringT.nextToken());
						easyGamesValue.setText(stringT.nextToken());

						return;
					} else {
						playerNameValue.setText(playerName);
						numberGamesTotalValue.setText("0");
						easyGamesValue.setText("0");

					}
				}
			}
			br.close();
		} catch (IOException e) {
			System.out.println("Error Reading File " + e.getMessage());
		}

	}

2 Respostas

J

ola
acho que seria mais facil se voce nos explicasse o que seu programa deve fazer…
entendi que voce vai ler de um arquivo de texto algumas linhas, ate q nao tenha mais linhas pra ler, e pelo o que voce disse, quer apagar as linhas.
nesse caso, por que voce nao le tudo, depois simplesmente cria um arquivo em branco por cima do anterior?
se for necessario passar por algum filtro (por exemplo, nao se deve apagar as linhas que comecem por ‘E’) acho que voce deve armazenar as linhas que deverão continuar num arraylist ou vector, e depois de feita toda a leitura, cria um novo arquivo em branco por cima do anterior e escreve o que ta no arraylist.

espero ter dado alguma luz

T

isto é para uma tabela de pontuações, ou seja… eu vou ler… e colocar visivel para o user… depois posteriormente eu vou escrever… mas a nova pontuação, ou seja… já n preciso da que li… para k numa futura leitura eu não vá ler a antiga pontuação outra vez…

Criado 11 de julho de 2006
Ultima resposta 11 de jul. de 2006
Respostas 2
Participantes 2