Eu tenho que ler um arquivo xml que se encontra no cartão de memória do tablet e jogar os dados em um bean e depois jogar esse bean em uma lista para depois percorrer a lista e persistir os beans na base de dados, até aí tudo bem, o problema é que a medida que o arquivo vai sendo lido, a leitura começa a ficar lenta demais, coloquei um log para imprimir os dados a medida que eles são lidos, o arquivo possui quase 100.000 linhas, essas 100.000 linhas totalizam aproximadamente 2.000 objetos (beans).
Quando eu inicio a leitura, o arquivo está sendo lido rápido, porém a velocidade da leitura vai caindo gradualmente, estou usando a biblioteca SAX para fazer a leitura.
Alguém sabe me dizer como solucionar esse problema de lentidão?
Pelo que parece a lentidao esta na leitura do arquivo que esta no cartão de memoria, diante de tal limitação de hardware acredito que naum tenha que seja possivel fazer
Estou no mato sem cachorro…
Vou contar um pouco do problema…
Eu estou migrando um sistema do fox pró, para o android.
O sistema do fox pró utiliza a base de dados SQL Server.
Os caras criaram uma função no fox que lê os dados do banco da aplicação e cria um xml para cada tabela dessa base de dados.
Minha missão é ler os dados desse xml e inserí-los no SQLite do Android.
A princípio o que eu tinha feito para ler esses xmls foi deixá-los no servidor da empresa e acessá-los via http, porém estava recebendo uns erros de stackOverFlow,
então resolvi mover os xmls para o cartão de memória e ler a partir dele, agora estou tendo esse problema de lentidão.
Alguém conhece um caminho mais fácil para resolver essa tarefa?
Porque no momemto eu não faço idéia.
[quote=levimendes]Estou no mato sem cachorro…
Vou contar um pouco do problema…
Eu estou migrando um sistema do fox pró, para o android.
O sistema do fox pró utiliza a base de dados SQL Server.
Os caras criaram uma função no fox que lê os dados do banco da aplicação e cria um xml para cada tabela dessa base de dados.
Minha missão é ler os dados desse xml e inserí-los no SQLite do Android.
A princípio o que eu tinha feito para ler esses xmls foi deixá-los no servidor da empresa e acessá-los via http, porém estava recebendo uns erros de stackOverFlow,
então resolvi mover os xmls para o cartão de memória e ler a partir dele, agora estou tendo esse problema de lentidão.
Alguém conhece um caminho mais fácil para resolver essa tarefa?
Porque no momemto eu não faço idéia.
Grato, Levi.[/quote]
Pq não disponibilizar um WebService e ler paginadamente os dados?