(26/01/2018, 09:16)JJaeger Escreveu: o que não é lá muito legal
só precisa lembrar de deletar, se fosse em java tem tipo de arquivo que se deleta sozinho depois que a aplicação para.
node, caracas mais do que certo para tu tentar executar um 7z.exe pelo terminal, que pelo que sei é uma aplicação crossplataforma tbm, pelo menos linux e win, da uma olhada http://www.7-zip.org/download.html, não vai te matar tanto deixar para algum software que já tem uma solução muito boa fazer o serviço, é o que rola com o ffmpeg nenhuma aplicação de encode de vídeo seja mac ou win se vira sem ela.
(26/01/2018, 09:25)Aria-shachou Escreveu: só precisa lembrar de deletar, se fosse em java tem tipo de arquivo que se deleta sozinho depois que a aplicação para.
node, caracas mais do que certo para tu tentar executar um 7z.exe pelo terminal, que pelo que sei é uma aplicação crossplataforma tbm, pelo menos linux e win, da uma olhada http://www.7-zip.org/download.html, não vai te matar tanto deixar para algum software que já tem uma solução muito boa fazer o serviço, é o que rola com o ffmpeg nenhuma aplicação de encode de vídeo seja mac ou win se vira sem ela.
eu vou testar a velocidade, provavelmente tem alguma binding dele pra node. Mas ainda acho que ler direto da memória ram uma string seja mais rápido que extrair e ler do disco, mas posso usar 7-zip pra arquivos com mais de 500 imagens ou algo assim. Querendo ou não tem um limite pra quantas strings vc pode converter em modo assíncrono.
(26/01/2018, 09:32)JJaeger Escreveu: Mas ainda acho que ler direto da memória ram uma string seja mais rápido que extrair e ler do disco
vije não é assim, mas se vc tiver uma imagem em ram toda a hora, e se o seu zip for de um volume inteiro, capaz de vc ficar sem ram ou consumir um tamanho gigante, a diferença de velocidade deve ser tão pouca, que o prejuízo de manter as info ali é maior. Claro faça seus testes, só dando uma ideia mais simples, já que o framework te limitou nesse requisito.
(26/01/2018, 08:59)JJaeger Escreveu: é que eu não tô muito acostumado com chamada async, ficar colocando callback ou tratando promise pra toda função que eu usar não é muito confortável
Pois é, é um paradigma de programação diferente, sempre falo para quem programa em Java e quer programar em Android esquecer quase tudo que fazem em web, patterns e etc porque é uma arquitetura completamente diferente.
Ao invés de ser um código procedural/sequencial como web, desktop e etc, tudo é feito pensando que enquanto o sujeito está mexendo pode chegar uma ligação ou que a aplicação tem baixa prioridade no aparelho onde trocentas coisas acontecem ao mesmo tempo.
Mas será um padrão de mercado para tudo no futuro, porque ao invés de travar a interface esperando o resultado por exemplo de uma requisição web, vc envia ela e recebe em background e atualiza a tela isso enquanto o usuário pode mexer.
(26/01/2018, 09:32)JJaeger Escreveu: eu vou testar a velocidade, provavelmente tem alguma binding dele pra node. Mas ainda acho que ler direto da memória ram uma string seja mais rápido que extrair e ler do disco, mas posso usar 7-zip pra arquivos com mais de 500 imagens ou algo assim. Querendo ou não tem um limite pra quantas strings vc pode converter em modo assíncrono.
Preciso extrair imagens de capa dum arquivo zip. Ou seja, apenas imagens específicas, não o conteúdo todo (embora o conteúdo todo também será extraído alguma hora).
Por hora, tô com muita complicação em ficar setando pasta temp e extrair, tá um callback hell aqui. Vou pegar esse stream-zip e testar o método de base64.
(26/01/2018, 18:56)JJaeger Escreveu: Preciso extrair imagens de capa dum arquivo zip. Ou seja, apenas imagens específicas, não o conteúdo todo (embora o conteúdo todo também será extraído alguma hora).
Por hora, tô com muita complicação em ficar setando pasta temp e extrair, tá um callback hell aqui. Vou pegar esse stream-zip e testar o método de base64.
Assumindo que seja um aplicativo de mangás no estilo da imagem que você mandou na página anterior, acho que o ideal seria extrair as capas usando esse stream-zip e salvar em uma pasta de cache. Assim quando abrir o programa ele só vai precisar extrair a imagem dos arquivos que ainda não estão no cache.
(26/01/2018, 10:30)gangrena Escreveu: Pois é, é um paradigma de programação diferente, sempre falo para quem programa em Java e quer programar em Android esquecer quase tudo que fazem em web, patterns e etc porque é uma arquitetura completamente diferente.
Ao invés de ser um código procedural/sequencial como web, desktop e etc, tudo é feito pensando que enquanto o sujeito está mexendo pode chegar uma ligação ou que a aplicação tem baixa prioridade no aparelho onde trocentas coisas acontecem ao mesmo tempo.
Mas será um padrão de mercado para tudo no futuro, porque ao invés de travar a interface esperando o resultado por exemplo de uma requisição web, vc envia ela e recebe em background e atualiza a tela isso enquanto o usuário pode mexer.
pra mim que só programou proceduralmente, esse paradigma é um pouco estranho mesmo, mas de fato, se não fosse por ele o node não seria tão rápido quanto ele é. Mas tem coisa que não dá pra fazer de forma assíncrona, e é aí que descobri um tal de "fibers".
(26/01/2018, 19:06)Amagami Escreveu: Assumindo que seja um aplicativo de mangás no estilo da imagem que você mandou na página anterior, acho que o ideal seria extrair as capas usando esse stream-zip e salvar em uma pasta de cache. Assim quando abrir o programa ele só vai precisar extrair a imagem dos arquivos que ainda não estão no cache.
acabei fazendo isso mesmo, fiz uns testes, e a demora entre extrair e visualizar o conteúdo é bem pequena, vale mais a pena.