Super waba - aplicacao nao carrega todos os dados- socorro

5 respostas
Javafull

Galera socorro,

Com esse codigo faço a carga do meu txt ou seja pego oque está no meu arquivo txt, e jogo para dentro de uma tabela do litebase, quando testo no pc, consigo carregar todos os clientes na tabela do litebase, porém quando carrego no palm tx, ele não carrega todos, onde estou errando, nao sei mais oque fazer, segue o meu codigo.

public void Trata_Arquivo() {

// setTitle(“Mario”);

Vm.debug(“mario”);
int fileSize = 0; // tamanho do arquivo

	File file = new File("/Documents/teste.txt", File.READ_ONLY);
	//File file = new File("C:\\temp\\teste.txt", File.READ_ONLY);
	if (!file.isOpen())
		return;

	int bytesRead = 0;
	int fileSize2;
	File file2;
	DataStream ds;
	// BufferedFile file3 = new BufferedFile("/Documents/teste.txt", 0,
	// file.getSize());

	//BufferedFile file3 = new BufferedFile("C:\\temp\\teste.txt", 0, file
	//.getSize());
	BufferedFile file3 = new BufferedFile("/Documents/teste.txt", 0, file
		.getSize());
	fileSize = file.getSize();
	bytesRead = 0;
	ds = new DataStream(file);
	StringBuffer ale = new StringBuffer();
	while (bytesRead + 4 <= fileSize) {
		try {
			ale.append(ds.readString());
			bytesRead += 15;
		} catch (Exception e) {
			e.printStackTrace();
			break;
		}
	}
	

	
	String teste = new String();
	String[] m = Convert.tokenizeString(ale.toString(), "\r\n");
	Cliente c = new Cliente();
	ClientesDAO clientesDAO = new ClientesDAO();
	clientesDAO.limparTabela();
	for (int i = 0; i < m.length; i++) {
		try {
			c.CP = Convert.tokenizeString(m[i], '|')[0];
			// c.cliente = (String) Convert.tokenizeString(m[i], '|')[1];
			// c.NumeroMedidor = (String) Convert.tokenizeString(m[i],
			// '|')[2];
			c.CS = (String) Convert.tokenizeString(m[i], '|')[1];
			c.PS = (String) Convert.tokenizeString(m[i], '|')[2];
			c.cliente = (String) Convert.tokenizeString(m[i], '|')[3];
			c.Data = (String) Convert.tokenizeString(m[i], '|')[4];
			c.Hora = (String) Convert.tokenizeString(m[i], '|')[5];
			c.leitura = (String) Convert.tokenizeString(m[i], '|')[6];
			c.Nome = (String) Convert.tokenizeString(m[i], '|')[7];
			c.Endereco = (String) Convert.tokenizeString(m[i], '|')[8];
			c.NumeroMedidor = (String) Convert.tokenizeString(m[i], '|')[9];
			c.NumeroDisplay = (String) Convert.tokenizeString(m[i], '|')[10];
			c.NumeroDisplayCampo = (String) Convert.tokenizeString(m[i],'|')[11];
			c.NumeroId = (String) Convert.tokenizeString(m[i], '|')[12];
			c.NumeroIdCampo = (String) Convert.tokenizeString(m[i], '|')[13];
			c.PosicaoDisplay = (String) Convert.tokenizeString(m[i], '|')[14];
			teste = Convert.tokenizeString(m[i], '|')[15];
			c.INDICE = Convert.toInt(teste);
			clientesDAO.Inserir(c);
		} catch (Exception e) {
			Vm.debug((String) Convert.tokenizeString(m[i], '|')[3]);
			Vm.debug(e.getMessage());
		}
	}

	clientesDAO.Recuperar("");

	// Vm.debug(new String(b));
	file.close();

}

5 Respostas

maniacs

Tente ver no log da JVM do seu tx, se esta gerando alguma exception …

G

Um problema que tive com carga de arquvos texto no superwaba foi o encodding…
Desculpe mas nao lembro de cabeça qual era…
Faça um teste por favor… pelo jeito você esta usando windows…
Pega o seu arquivo txt, na hora de salvar ( pelo bloco de notas ) coloca o encoding como Unicode.
Se nao der certo, teste com os outros encodings e qualquer coisa poste o resultado.

maniacs

No TX eu usei UTF-8, não tive problema com encoding pelo menos…

Javafull

Valeu galera vou testar e posto o resultado.

fiaux

Apenas para constar: http://www.superwaba.com.br/pt/forums.asp

Criado 4 de janeiro de 2008
Ultima resposta 5 de jan. de 2008
Respostas 5
Participantes 4