Problema carga txt - superwaba - socorro

Galera eu consigo carregar um txt, e grava-lo no litebase, porém ele não esta carregando todos os clientes, digamos que eu tenho 190, clientes no meu txt, na hora de carregar ele carrega somente, 140 ja mudei o encoding do meu txt nao funcionou, nao sei se e por causa da limitacao da memoria do palm tx, segue abaixo o meu codigo, conto com a ajuda de vcs.

public void Trata_Arquivo() {
// setTitle(“Mario”);
Vm.debug(“mario”);

	int fileSize = 0; // tamanho do arquivo

	BufferedFile file3 = new BufferedFile("/Documents/teste.txt", File.READ_ONLY);
	//File file = new File("C:\\temp\\teste.txt", File.READ_ONLY);
	if (!file3.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 = file3.getSize();
	bytesRead = 0;
	ds = new DataStream(file3);
	StringBuffer ale = new StringBuffer();
	while (bytesRead <= fileSize) {
		try {
			ale.append(ds.readString());
			bytesRead += 1;
		} catch (Exception e) {
			e.printStackTrace();
			break;
		}
	}
//	file.close();

	// String[] x = Convert.tokenizeString(ale.toString(), "\r\n");

	// fileSize = file.getSize();

	// byte b[] = new byte[fileSize];// array de bytes com o tamanho do meu
	// arquivo, aloca espaço
	// file.readBytes(b, 0, fileSize); // (b = array de bytes, 0 = de onde
	// começa, filesize = tamanho do
	// arquivo)
	// String s = new String();
	// s = new String(b);
	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));
	file3.close();

}