Salvar Arquivo de Texto! Duvida [RESOLVIDO]

1 resposta
L

pessoal bom dia, gostaria de pedir uma ajuda!!
estou tentando gravar em arquivo .txt com milhões de linhas, com possíveis possibilidades!
Peguei aqui esta classe, o meu problema é que quando o arquivo fica muito grande eu não consigo abrir o arquivo de saida "result.txt".
Como faço quando a massa de dados é muito grande!!

import java.io.FileNotFoundException;
import java.io.PrintStream;
import java.math.BigInteger;

public class Teste {
	private static BigInteger nVezes = BigInteger.ZERO;
	private static PrintStream gravador;

	public static void main(String args[]) {

		try {
			gravador = new PrintStream("result.txt");

			StringBuffer seq = new StringBuffer();
			seq.append("abcdefghijklmnopqrstuvwxyz");
			seq.append("ABCDEFGHIJKLMNOPQRSTUVWXYZ");
			seq.append("[telefone removido]");
			seq.append("`~!@#$%^&*()-_=+[]{}|;:',<.>/?\\" ");

			gravador.println("");
			gravador
					.println("#######################################################################################################");
			gravador.println(seq);
			gravador
					.println("#######################################################################################################");
			gravador.println("");

			int maxLevel;
			for (maxLevel = 1; maxLevel <= 4; maxLevel++) {
				new Teste().proccess(new StringBuilder(seq), maxLevel);
			}
			gravador.close();
			System.out.println("---Concluido---");
			System.out.println(nVezes.toString());
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		}
		
	}

	private void proccess(StringBuilder sequencia, int maxLevel) {
		for (int i = 0; i < sequencia.length(); i++) {
			add(new StringBuilder(), sequencia.charAt(i), removeChar(sequencia,
					i), 1, maxLevel);
		}
	}

	private void add(StringBuilder seq, char c, StringBuilder remain,
			int level, int maxLevel) {
		StringBuilder newSeq = new StringBuilder(seq.length() + 1);
		newSeq.append(seq);
		newSeq.append(c);

		if (remain.length() == 0 || level == maxLevel) {

			System.out.println(newSeq);
			gravador.println(newSeq);
			nVezes = nVezes.add(BigInteger.ONE);
		} else {
			for (int i = 0; i < remain.length(); i++) {
				add(newSeq, remain.charAt(i), removeChar(remain, i), level + 1,
						maxLevel);
			}
		}

	}

	private StringBuilder removeChar(StringBuilder c, int pos) {
		StringBuilder result = new StringBuilder(c.length() - 1);
		result.append(c);
		result.deleteCharAt(pos);

		return result;
	}

}

1 Resposta

L

Primeiramente desculpe a demora, a duvida é boba … olhei o arquivo de texto etava gerando arquivos de quase 10GB não tenho maquina para isso hehe nem teria tao facil kkk isso para algumas possibilidades heeh
Desculpe a pergunta!!

Criado 12 de fevereiro de 2011
Ultima resposta 29 de jun. de 2011
Respostas 1
Participantes 1