Cara, o único problema que você tá tendo é o de processar a string do
arquivo, certo?
O algoritmo precisa de todos os pedaços da String? Porque você não faz o
seguinte: divide o arquivo em um Array de ByteArray e os lê conforme a
necessidade?
Já tive que fazer algo parecido (porém não chegava a 250MB rs) e resolvi
dessa forma: Array de ByteArray, lendo parte por parte e processando
conforme a necessidade.
Outra coisa que ajudou foi que os dados que o arquivo continha eram
divididos por quebras de linha, então eu varria o ByteArray por quebras de
linha e só extraía a informação necessária. Então se houver um padrão que a
gente possa trabalhar antes de converter o arquivo pra String, vai ser
melhor.

Depois posto alguns exemplos de como fazê-lo (assim que tiver um tempinho
rs).

--
Gustavo Y. Kawamoto


2009/12/17 Mário Júnior <juninho...@gmail.com>

> Haa.. pra reforçar o primeiro item, com AIR sua app fica independente de SO
> (var rodar no win, mac e linux).
> Nao sei para os clientes corporativos, mas eu como cliente "pessoa física"
> da empresa telefonica só tenho a opção do EXE, oq não rola no meu Mac... e
> vou te falar como usuario, isso é muito chato :(
>
> Discuta com o seu pessoal aí... acho q o seu caso é um caso ótimo para o
> uso do AIR.
>
>
> Um forte abraço
>
>
>
>
> 2009/12/17 Mário Júnior <juninho...@gmail.com>
>
> Opa Erko.
>>
>> Cara.. sua missao é dificil, nao impossivel, mas dificil pq vc pode
>> esbarrar muito nas limitacoes do player e a falta de recursos (oq teríamos
>> facil em java, ou qualquer outra linguagem server-side).
>>
>> Enfim, como alternativa, eu proponho que vc altere seu projeto para AIR,
>> pelos seguintes motivos: (por nao conhecer todo o contexto, pode ser q
>> alguns motivos - ou todos - sejam anulados =D )\
>>
>> 1) Hoje vcs já tem um aplicativo (sei do EXE, nao sei se tem para outras
>> plataformas - linux, mac), entao nao acho q seria ruim continuar com um
>> aplicativo específico para esses clientes corporativos, entao migrar para
>> AIR nao é um "tiro no pé".
>>
>> 2) Com AIR vc poderia manipular esses arquivos com mais facilidade usando
>> a File API.
>>
>> 3) Com AIR, vc pode ter TODOS os mesmos recursos interativos de view para
>> sua APP, mesmo nao sendo uma "internet application", ela ainda pode ser
>> Rica! Como meu amigo
>> Stefan diz, RIA poderia mudar de "Rich *Internet* Applications" para
>> "Rich *Interactive* Applications" =D
>>
>> 4) A Runtime do AIR tem o desempenho bem melhor que o Flash Player e o GC
>> dele funciona bem melhor.
>>
>> 5) Distribuir esse aplicativo é facil usando o Badge (
>> http://www.adobe.com/devnet/air/articles/badge_for_air.html), assim seus
>> clientes corporativos podem acessar a página do badge e instalar seu
>> aplicativo facilmente. Haa!! Detalhe Importante: Se eles não tem AIR Runtime
>> na máquina, o Badge instala junto!!! Massa né?! =D
>>
>> 6) AIR AutoUpdate (
>> http://www.horochovec.com.br/blog/2009/08/14/air-criando-uma-aplicacao-com-atualizacao-automatica-parte-iii/
>> )
>> Os clientes que já tiverem seus aplicativos, poderão atualizar usando o
>> proprio Auto Update do AIR, como o Stefan mostra no artigo (recomendo a
>> leitura desde a parte I, é muito fácil)
>>
>>
>> Enfim... verifique essa possibilidade.
>>
>>
>> Abraços.
>>
>>
>>
>>
>> 2009/12/17 Vítor Avelino <vito...@gmail.com>
>>
>> Não teria como fazer isso do lado do back-end não? Meio retórica, mas vale
>>> a tentativa...
>>>
>>> 2009/12/17 Erko Bridee de Almeida Cabrera <erko.bri...@gmail.com>
>>>
>>> O problema que o ActionScript 3 não tenho muitas coisas
>>>> q eu faria brincando manipulação de bytes como no java :P
>>>>
>>>> descobri que vou ter que de algum jeito ler em blocos os bytes...
>>>> que é oq estou tentando fazer nessa tarde, mas por enquanto
>>>> sem sucesso :P
>>>>
>>>>
>>>>
>>>> 2009/12/17 Edgard Davidson <edgard.david...@gmail.com>
>>>>
>>>> Olá Ekro.
>>>>> O projeto que citei foi implementado todo em delphi.
>>>>> Eu usei uma técnica de leitura de arquivo chamada "Mapped File", mas
>>>>> essa técnica é muito baixo nível. Usava chamadas privilegiadas da API do
>>>>> Windows. Eu não tenho link, eu tirei o parte do fonte de um livro de 
>>>>> Delphi
>>>>> 2 Advanced.
>>>>> Mas acredito que se fizer a paginação do arquivo texto você conseguirá.
>>>>> O problema que vejo é que se seu arquivo não for padronizado, ou seja,
>>>>> como é um arquivo texto provavelmente cada linha deve ter uma quantidade
>>>>> diferentes de caracteres, se isso é verdade, irá dificultar o calculo na
>>>>> paginação. No meu projeto eu tinha esse problema, então a solução foi
>>>>> adicionar espaços em branco no final de cada linha. Dessa forma todas as
>>>>> linhas do meu relatório tinham 132 colunas (ou caracteres). Desse jeito 
>>>>> para
>>>>> calcular a paginação era mole.
>>>>> Em cada paginação eu trazia 66 linhas, cada uma contendo 132
>>>>> caracteres. Agora para paginar é só manipulação de arquivo ((132 * 66) *
>>>>> Deslocamento), onde Deslocamento era a posição do scroll que o usuário
>>>>> rolava. Fazia um seek no arquivo e boa!!!
>>>>>
>>>>>
>>>>> 2009/12/16 Erko Bridee de Almeida Cabrera <erko.bri...@gmail.com>
>>>>>
>>>>>> Cara muito legal essa tua ideia,
>>>>>>
>>>>>> hj nas minhas leituras e pesquisas estou indo +- para essa linha
>>>>>>
>>>>>> por acaso tu tem links do assunto ae?
>>>>>>
>>>>>> ps.: achei pouco material sobre ^^
>>>>>>
>>>>>> muito obrigado pela ajuda o/
>>>>>>
>>>>>> 2009/12/16 Edgard Davidson <edgard.david...@gmail.com>
>>>>>>
>>>>>> Olá Erko
>>>>>>> Uma vez desenvolvi um projeto que tinha o mesmo problema. Naquela
>>>>>>> ocasião eu tinha que ler um arquivo texto contábil com mais de 4 
>>>>>>> milhões de
>>>>>>> linhas, o que dava mais ou menos uns 5GB.
>>>>>>> Então, usei como analogia aos players de vídeos. Imagine, um vídeo de
>>>>>>> 1GB como o pc rada? Bom o vilme tem 1GB e uma hora e meia, só que você 
>>>>>>> irá
>>>>>>> ver segundo por segundo, e cada segundo são 30 frames. Nesse caso, pq 
>>>>>>> então
>>>>>>> colocar todo o vídeo em memória.
>>>>>>> Com essa analogia desenvolvi o projeto, onde eu linha blocos do
>>>>>>> arquivo texto e mandava para a interface, como o usuário só é capaz de 
>>>>>>> ler
>>>>>>> uma página por vez, então quando ele paginava, eu voltava ao arquivo
>>>>>>> original, recalculava o deslocamento que ele fez com base no movimento 
>>>>>>> do
>>>>>>> scoll e trazia novamente mais um pedaço do arquivo. Nessa brincadeira, 
>>>>>>> das
>>>>>>> milhares de páginas que meu arquivo texto tinha, eu só retornava 64 
>>>>>>> linhas
>>>>>>> por vez, o que dava mais ou menos uns 50 kb.
>>>>>>> Dessa forma consegui resolver o problema e a aplicação ficou um
>>>>>>> foguete!!!
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> 2009/12/16 Erko Bridee de Almeida Cabrera <erko.bri...@gmail.com>
>>>>>>>
>>>>>>> Então o drama é o seguinte
>>>>>>>>
>>>>>>>> o cliente já fez o download do arquivo com as informações
>>>>>>>> que varia de 20 a 250+ MB para os clientes corporativos
>>>>>>>>
>>>>>>>> agora se eu tiver q mandar isso via internet para o servidor
>>>>>>>> para depois voltar
>>>>>>>>
>>>>>>>> 250 MB download
>>>>>>>> 250 MB upload
>>>>>>>> -250 MB download (creio eu que menos dq o valor inicial em objetos)
>>>>>>>>
>>>>>>>> arredondando essa brincadeira: 750 MB de tráfego na internet...
>>>>>>>>
>>>>>>>> isso para ver um arquivo é insano ^^
>>>>>>>>
>>>>>>>> se bem q eu já apresentei esse cenário na reunião q teve hj o
>>>>>>>> pessoal
>>>>>>>> meio que aceitou o absurdo e a principio vamos limitar em 100 MB que
>>>>>>>> a app
>>>>>>>> o Adobe Flash Player Runtime aguentou ler ^^
>>>>>>>>
>>>>>>>> mas continuo a leitura sobre manipulação de arquivos no Adobe Flash
>>>>>>>> Player 10+
>>>>>>>>
>>>>>>>> o/
>>>>>>>>
>>>>>>>>
>>>>>>>> 2009/12/15 J.C.Ködel <jcko...@gmail.com>
>>>>>>>>
>>>>>>>>>  OPs. Esqueci do resto: não, não fiz jogos em Flex (ainda). Pura
>>>>>>>>> falta de tempo.
>>>>>>>>>
>>>>>>>>> O jogo em questão era o bom e velho Ultima Online (www.uo.com) com
>>>>>>>>> um servidor customizado feito em C# (www.runuo.com)
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>  *From:* Erko Bridee de Almeida Cabrera <erko.bri...@gmail.com>
>>>>>>>>> *Sent:* Tuesday, December 15, 2009 2:47 PM
>>>>>>>>> *To:* flexdev@googlegroups.com
>>>>>>>>> *Subject:* Re: [flexdev] Leitura de arquivo > 250 MB
>>>>>>>>>
>>>>>>>>> Tenho um projeto aki
>>>>>>>>>
>>>>>>>>> Adobe Flex  (interface)
>>>>>>>>> BlazeDS (Java - Server)
>>>>>>>>>
>>>>>>>>> de Telecom, onde os clientes corporativos
>>>>>>>>> irão ter uma aplicação em Flex para ler/carregar e
>>>>>>>>> visualizar as informações detalhadas de suas contas
>>>>>>>>> telefonicas
>>>>>>>>>
>>>>>>>>> o problema q os clientes corporativos pode ter casos
>>>>>>>>> de um arquivo com mais de 200 MB
>>>>>>>>>
>>>>>>>>> para arquivos de até 50 MB a aplicação
>>>>>>>>> está lidando tranquilamente, a leitura do arquivo,
>>>>>>>>> isto a parte em Adobe Flex =]
>>>>>>>>>
>>>>>>>>> o arquivo está na máquina do cliente
>>>>>>>>>
>>>>>>>>> no geral a aplicação consiste em geral em um visualizador
>>>>>>>>> gráfico desse arquivo, que vai apresentar gráficos
>>>>>>>>> e opções de calculos e filtros ^^
>>>>>>>>>
>>>>>>>>> bom se tu souber algo relacionado a leitura de arquivos grandes
>>>>>>>>> textuais no Adobe Flex e/ou AIR
>>>>>>>>>
>>>>>>>>> qq link, referencia já é uma luz ^^
>>>>>>>>>
>>>>>>>>> muito obrigado o/
>>>>>>>>>
>>>>>>>>> ----
>>>>>>>>>
>>>>>>>>> ps.: tu desenvolve games com Adobe Flex é? tem algo publicado,
>>>>>>>>> mesmo post
>>>>>>>>> sobre o assunto?
>>>>>>>>>
>>>>>>>>> eu curto games ^^
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 2009/12/15 J.C.Ködel <jcko...@gmail.com>
>>>>>>>>>
>>>>>>>>>>  Já fiz projetos que tinham que ler mais do que 2 Gb para a
>>>>>>>>>> memória (um servidor de jogos online). Imagine um jogo online com 
>>>>>>>>>> milhões de
>>>>>>>>>> itens distribuídos em 7 mapas gigantescos com milhares de jogadores 
>>>>>>>>>> online,
>>>>>>>>>> tudo em memória e sendo persistido pra disco de tempos em tempos.
>>>>>>>>>>
>>>>>>>>>> Por motivos de performance, foi feito via PInvoke.
>>>>>>>>>>
>>>>>>>>>> Qual plataforma e linguagem pretende utilizar?
>>>>>>>>>>
>>>>>>>>>>  *From:* Erko Bridee de Almeida Cabrera <erko.bri...@gmail.com>
>>>>>>>>>> *Sent:* Tuesday, December 15, 2009 11:20 AM
>>>>>>>>>> *To:* flexdev@googlegroups.com
>>>>>>>>>> *Subject:* [flexdev] Leitura de arquivo > 250 MB
>>>>>>>>>>
>>>>>>>>>> Olá pessoal blz?
>>>>>>>>>>
>>>>>>>>>> sei que isso é insano, mas tenho um caso aqui
>>>>>>>>>> que preciso ler um arquivo de 250+ MB e joga-lo para memória
>>>>>>>>>>
>>>>>>>>>> que representam uma coleção de objetos
>>>>>>>>>>
>>>>>>>>>> alguem aqui já teve a necessidade de ler um arquivo tão grande
>>>>>>>>>> assim?
>>>>>>>>>>
>>>>>>>>>> conhece alguma referencia/link sobre o assunto?
>>>>>>>>>>
>>>>>>>>>> grato pela ajuda ^^
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Att,
>>>>>>>>>> Erko Bridee de Almeida Cabrera
>>>>>>>>>> http://erkobridee.com/
>>>>>>>>>> http://gospel.erkobridee.com/
>>>>>>>>>> http://www.cwbfx.com/
>>>>>>>>>> http://twitter.com/ErkoBridee
>>>>>>>>>> Currículo: http://netcarreiras.com/prof.html?uid=11410
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>>>>>>>>> Para enviar uma mensagem, envie um e-mail para
>>>>>>>>>> flexdev@googlegroups.com
>>>>>>>>>> Para sair da lista, envie um email em branco para
>>>>>>>>>> flexdev-unsubscr...@googlegroups.com
>>>>>>>>>> Mais opções estão disponíveis em
>>>>>>>>>> http://groups.google.com/group/flexdev
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Att,
>>>>>>>>> Erko Bridee de Almeida Cabrera
>>>>>>>>> http://erkobridee.com/
>>>>>>>>> http://gospel.erkobridee.com/
>>>>>>>>> http://www.cwbfx.com/
>>>>>>>>> http://twitter.com/ErkoBridee
>>>>>>>>> Currículo: http://netcarreiras.com/prof.html?uid=11410
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>>>>>>>> Para enviar uma mensagem, envie um e-mail para
>>>>>>>>> flexdev@googlegroups.com
>>>>>>>>> Para sair da lista, envie um email em branco para
>>>>>>>>> flexdev-unsubscr...@googlegroups.com
>>>>>>>>> Mais opções estão disponíveis em
>>>>>>>>> http://groups.google.com/group/flexdev
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Att,
>>>>>>>> Erko Bridee de Almeida Cabrera
>>>>>>>> http://erkobridee.com/
>>>>>>>> http://gospel.erkobridee.com/
>>>>>>>> http://www.cwbfx.com/
>>>>>>>> http://twitter.com/ErkoBridee
>>>>>>>> Currículo: http://netcarreiras.com/prof.html?uid=11410
>>>>>>>>
>>>>>>>> --
>>>>>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>>>>>>> Para enviar uma mensagem, envie um e-mail para
>>>>>>>> flexdev@googlegroups.com
>>>>>>>> Para sair da lista, envie um email em branco para
>>>>>>>> flexdev-unsubscr...@googlegroups.com
>>>>>>>> Mais opções estão disponíveis em
>>>>>>>> http://groups.google.com/group/flexdev
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Edgard Davidson.
>>>>>>> blog:edgarddavidson.com
>>>>>>> skype:edgarddavidson
>>>>>>> twitter:http://twitter.com/edgarddavidson
>>>>>>> LindedIn:http://br.linkedin.com/in/edgarddavidson
>>>>>>> FaceBook:
>>>>>>> http://pt-br.facebook.com/people/Edgard-Davidson/100000408023347
>>>>>>>
>>>>>>>  --
>>>>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>>>>>> Para enviar uma mensagem, envie um e-mail para
>>>>>>> flexdev@googlegroups.com
>>>>>>> Para sair da lista, envie um email em branco para
>>>>>>> flexdev-unsubscr...@googlegroups.com
>>>>>>> Mais opções estão disponíveis em
>>>>>>> http://groups.google.com/group/flexdev
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Att,
>>>>>> Erko Bridee de Almeida Cabrera
>>>>>> http://erkobridee.com/
>>>>>> http://gospel.erkobridee.com/
>>>>>> http://www.cwbfx.com/
>>>>>> http://twitter.com/ErkoBridee
>>>>>> Currículo: http://netcarreiras.com/prof.html?uid=11410
>>>>>>
>>>>>> --
>>>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>>>>> Para enviar uma mensagem, envie um e-mail para
>>>>>> flexdev@googlegroups.com
>>>>>> Para sair da lista, envie um email em branco para
>>>>>> flexdev-unsubscr...@googlegroups.com
>>>>>> Mais opções estão disponíveis em
>>>>>> http://groups.google.com/group/flexdev
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Edgard Davidson.
>>>>> blog:edgarddavidson.com
>>>>> skype:edgarddavidson
>>>>> twitter:http://twitter.com/edgarddavidson
>>>>> LindedIn:http://br.linkedin.com/in/edgarddavidson
>>>>> FaceBook:
>>>>> http://pt-br.facebook.com/people/Edgard-Davidson/100000408023347
>>>>>
>>>>> --
>>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>>>> Para enviar uma mensagem, envie um e-mail para
>>>>> flexdev@googlegroups.com
>>>>> Para sair da lista, envie um email em branco para
>>>>> flexdev-unsubscr...@googlegroups.com
>>>>> Mais opções estão disponíveis em
>>>>> http://groups.google.com/group/flexdev
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Att,
>>>> Erko Bridee de Almeida Cabrera
>>>> http://erkobridee.com/
>>>> http://gospel.erkobridee.com/
>>>> http://www.cwbfx.com/
>>>> http://twitter.com/ErkoBridee
>>>> Currículo: http://netcarreiras.com/prof.html?uid=11410
>>>>
>>>> --
>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>>> Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
>>>> Para sair da lista, envie um email em branco para
>>>> flexdev-unsubscr...@googlegroups.com
>>>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>>>>
>>>
>>>  --
>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>> Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
>>> Para sair da lista, envie um email em branco para
>>> flexdev-unsubscr...@googlegroups.com
>>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>>>
>>
>>
>>
>> --
>> Mario Junior
>> Enterprise Java / Flex Architectures
>> Adobe Certified Expert Flex 3 with AIR
>>
>> Sofshore Informática
>> http://www.sofshore.com.br
>> +55 (48) 3337 2003
>> Rua Pastor Willian Richard Schisler Filho 452 sl 102, 88034-100 Itacorubi
>> Florianopolis SC Brasil
>>
>
>
>
> --
> Mario Junior
> Enterprise Java / Flex Architectures
> Adobe Certified Expert Flex 3 with AIR
>
> Sofshore Informática
> http://www.sofshore.com.br
> +55 (48) 3337 2003
> Rua Pastor Willian Richard Schisler Filho 452 sl 102, 88034-100 Itacorubi
> Florianopolis SC Brasil
>
> --
> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
> Para sair da lista, envie um email em branco para
> flexdev-unsubscr...@googlegroups.com
> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>

-- 
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
Para sair da lista, envie um email em branco para 
flexdev-unsubscr...@googlegroups.com
Mais opções estão disponíveis em http://groups.google.com/group/flexdev

Responder a