Dúvida Iniciante: Definir número máximo de bytes para escrita em arquivo

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

Dúvida Iniciante: Definir número máximo de bytes para escrita em arquivo

Ulisses Piassa
Galera, boa tarde, tudo blz?

Estou tentando criar uma função que vai receber um número arbitrário de bytes (por exemplo, 2000 bytes) e que vai escrever em arquivos de até X bytes cada (500 bytes, por exemplo, gerando assim 4 arquivos diferentes.

Então crio um handler de arquivo que vai receber os dados a serem escritos. No entanto, não estou conseguindo parar a escrita no tanto de bytes desejado e iniciar a escrita de um outro arquivo. Estive tentando usar o file:setvbuf("full", [,size]), mas não obtive sucesso.

Tentei usar também o file:seek, mas também não consegui chegar onde queria.

Será que alguém teria alguma luz?

Obrigado pessoal!!

[]'s

Ulisses

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Dúvida Iniciante: Definir número máximo de bytes para escrita em arquivo

Tomás Guisasola-2
Olá Ulisses

O que você quer dizer com "não estou conseguindo parar a escrita"?  Você
não está contando quantos bytes escreve?  Como é que a sua função é
chamada?  Ela recebe todos os 2000 bytes de uma vez ou vai recebendo em
partes?

Abraço,
Tomás

On 2016-02-02 12:29, Ulisses Piassa wrote:

> Galera, boa tarde, tudo blz?
>
> Estou tentando criar uma função que vai receber um número
> arbitrário de bytes (por exemplo, 2000 bytes) e que vai escrever em
> arquivos de até X bytes cada (500 bytes, por exemplo, gerando assim 4
> arquivos diferentes.
>
> Então crio um handler de arquivo que vai receber os dados a serem
> escritos. No entanto, não estou conseguindo parar a escrita no tanto
> de bytes desejado e iniciar a escrita de um outro arquivo. Estive
> tentando usar o file:setvbuf("full", [,size]), mas não obtive
> sucesso.
>
> Tentei usar também o file:seek, mas também não consegui chegar onde
> queria.
>
> Será que alguém teria alguma luz?
>
> Obrigado pessoal!!
>
> []'s
>
> Ulisses
>
>  --
>  Você recebeu essa mensagem porque está inscrito no grupo "Lua BR"
> dos Grupos do Google.
>  Para cancelar inscrição nesse grupo e parar de receber e-mails
> dele, envie um e-mail para [hidden email].
>  Acesse esse grupo em https://groups.google.com/group/lua-br [1].
>  Para mais opções, acesse https://groups.google.com/d/optout [2].
>
>
> Links:
> ------
> [1] https://groups.google.com/group/lua-br
> [2] https://groups.google.com/d/optout

--
Você está recebendo esta mensagem porque se inscreveu no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Visite este grupo em https://groups.google.com/group/lua-br.
Para obter mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Dúvida Iniciante: Definir número máximo de bytes para escrita em arquivo

Denis Dos Santos Silva
In reply to this post by Ulisses Piassa
bem,
acho que o mais prático seria usar a biblioteca string

caso nao consiga, eu faço um exemplo mais tarde.

string.sub OU variavel:sub 
retorna uma nova string

parte = string.sub(dados, 1, 10); --- retorna do 1 até o 10
parte = string.sub(dados, 10, 20); --- começa do 10 até o 20

dai vc grava as partes

--- http://lua-users.org/wiki/StringLibraryTutorial

s:sub(i [,j])

Return a substring of the string passed. The substring starts at i. If the third argument j is not given, the substring will end at the end of the string. If the third argument is given, the substring ends at and includes j.

> = string.sub("Hello Lua user", 7)      -- from character 7 until the end
Lua user
> = string.sub("Hello Lua user", 7, 9)   -- from character 7 until and including 9
Lua
> = string.sub("Hello Lua user", -8)     -- 8 from the end until the end
Lua user
> = string.sub("Hello Lua user", -8, 9)  -- 8 from the end until 9 from the start
Lua
> = string.sub("Hello Lua user", -8, -6) -- 8 from the end until 6 from the end
---


Em terça-feira, 2 de fevereiro de 2016 12:29:54 UTC-2, Ulisses Piassa escreveu:
Galera, boa tarde, tudo blz?

Estou tentando criar uma função que vai receber um número arbitrário de bytes (por exemplo, 2000 bytes) e que vai escrever em arquivos de até X bytes cada (500 bytes, por exemplo, gerando assim 4 arquivos diferentes.

Então crio um handler de arquivo que vai receber os dados a serem escritos. No entanto, não estou conseguindo parar a escrita no tanto de bytes desejado e iniciar a escrita de um outro arquivo. Estive tentando usar o file:setvbuf("full", [,size]), mas não obtive sucesso.

Tentei usar também o file:seek, mas também não consegui chegar onde queria.

Será que alguém teria alguma luz?

Obrigado pessoal!!

[]'s

Ulisses

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Dúvida Iniciante: Definir número máximo de bytes para escrita em arquivo

Ulisses Piassa
Legal, usei o string.sub e também o length (#) para contar os caracteres e ambos "worked like a charm"!

Consegui fazer com que os arquivos fossem criados com sucesso também!

A partir disso, o que estou tentando agora é pegar o output da função print, se é que isso é possível, e escrever esse output num arquivo (agora sem limite nenhum de bytes).

Ou seja, sempre que algo for imprimido no trace, isso será salvo no arquivo em questão.

Existe alguma forma de "redirecionar" esse output? Ou então de capturá-lo? Li algo sobre "hooks" no PiL, mas acho que mais uma vez, estou indo num caminho que não é o mais efetivo.

Valeu por toda a ajuda até agora galera!

[]'s!!

2016-02-02 17:44 GMT-02:00 Denis Dos Santos Silva <[hidden email]>:
bem,
acho que o mais prático seria usar a biblioteca string

caso nao consiga, eu faço um exemplo mais tarde.

string.sub OU variavel:sub 
retorna uma nova string

parte = string.sub(dados, 1, 10); --- retorna do 1 até o 10
parte = string.sub(dados, 10, 20); --- começa do 10 até o 20

dai vc grava as partes

s:sub(i [,j])

Return a substring of the string passed. The substring starts at i. If the third argument j is not given, the substring will end at the end of the string. If the third argument is given, the substring ends at and includes j.

> = string.sub("Hello Lua user", 7)      -- from character 7 until the end
Lua user
> = string.sub("Hello Lua user", 7, 9)   -- from character 7 until and including 9
Lua
> = string.sub("Hello Lua user", -8)     -- 8 from the end until the end
Lua user
> = string.sub("Hello Lua user", -8, 9)  -- 8 from the end until 9 from the start
Lua
> = string.sub("Hello Lua user", -8, -6) -- 8 from the end until 6 from the end
---


Em terça-feira, 2 de fevereiro de 2016 12:29:54 UTC-2, Ulisses Piassa escreveu:
Galera, boa tarde, tudo blz?

Estou tentando criar uma função que vai receber um número arbitrário de bytes (por exemplo, 2000 bytes) e que vai escrever em arquivos de até X bytes cada (500 bytes, por exemplo, gerando assim 4 arquivos diferentes.

Então crio um handler de arquivo que vai receber os dados a serem escritos. No entanto, não estou conseguindo parar a escrita no tanto de bytes desejado e iniciar a escrita de um outro arquivo. Estive tentando usar o file:setvbuf("full", [,size]), mas não obtive sucesso.

Tentei usar também o file:seek, mas também não consegui chegar onde queria.

Será que alguém teria alguma luz?

Obrigado pessoal!!

[]'s

Ulisses

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Dúvida Iniciante: Definir número máximo de bytes para escrita em arquivo

Ulisses Piassa
*Ou seja, sempre que algo for impresso no trace, isso será salvo no arquivo em questão.

Desculpem o erro grotesco de português!

2016-02-02 17:56 GMT-02:00 Ulisses Piassa <[hidden email]>:
Legal, usei o string.sub e também o length (#) para contar os caracteres e ambos "worked like a charm"!

Consegui fazer com que os arquivos fossem criados com sucesso também!

A partir disso, o que estou tentando agora é pegar o output da função print, se é que isso é possível, e escrever esse output num arquivo (agora sem limite nenhum de bytes).

Ou seja, sempre que algo for imprimido no trace, isso será salvo no arquivo em questão.

Existe alguma forma de "redirecionar" esse output? Ou então de capturá-lo? Li algo sobre "hooks" no PiL, mas acho que mais uma vez, estou indo num caminho que não é o mais efetivo.

Valeu por toda a ajuda até agora galera!

[]'s!!

2016-02-02 17:44 GMT-02:00 Denis Dos Santos Silva <[hidden email]>:
bem,
acho que o mais prático seria usar a biblioteca string

caso nao consiga, eu faço um exemplo mais tarde.

string.sub OU variavel:sub 
retorna uma nova string

parte = string.sub(dados, 1, 10); --- retorna do 1 até o 10
parte = string.sub(dados, 10, 20); --- começa do 10 até o 20

dai vc grava as partes

s:sub(i [,j])

Return a substring of the string passed. The substring starts at i. If the third argument j is not given, the substring will end at the end of the string. If the third argument is given, the substring ends at and includes j.

> = string.sub("Hello Lua user", 7)      -- from character 7 until the end
Lua user
> = string.sub("Hello Lua user", 7, 9)   -- from character 7 until and including 9
Lua
> = string.sub("Hello Lua user", -8)     -- 8 from the end until the end
Lua user
> = string.sub("Hello Lua user", -8, 9)  -- 8 from the end until 9 from the start
Lua
> = string.sub("Hello Lua user", -8, -6) -- 8 from the end until 6 from the end
---


Em terça-feira, 2 de fevereiro de 2016 12:29:54 UTC-2, Ulisses Piassa escreveu:
Galera, boa tarde, tudo blz?

Estou tentando criar uma função que vai receber um número arbitrário de bytes (por exemplo, 2000 bytes) e que vai escrever em arquivos de até X bytes cada (500 bytes, por exemplo, gerando assim 4 arquivos diferentes.

Então crio um handler de arquivo que vai receber os dados a serem escritos. No entanto, não estou conseguindo parar a escrita no tanto de bytes desejado e iniciar a escrita de um outro arquivo. Estive tentando usar o file:setvbuf("full", [,size]), mas não obtive sucesso.

Tentei usar também o file:seek, mas também não consegui chegar onde queria.

Será que alguém teria alguma luz?

Obrigado pessoal!!

[]'s

Ulisses

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.


--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Dúvida Iniciante: Definir número máximo de bytes para escrita em arquivo

Tomás Guisasola-2
Olá Ulisses

Você deve usar io.write ao invés de print, pois print vai acrescentar
quebras de linha que você não deve querer.  Dê uma olhadinha no manual
para os detalhes.

Abraço,
Tomás

On 2016-02-02 17:57, Ulisses Piassa wrote:

> *Ou seja, sempre que algo for _impresso _no trace, isso será salvo no
> arquivo em questão.
>
> Desculpem o erro grotesco de português!
>
> 2016-02-02 17:56 GMT-02:00 Ulisses Piassa <[hidden email]>:
>
>> Legal, usei o string.sub e também o length (#) para contar os
>> caracteres e ambos "worked like a charm"!
>>
>> Consegui fazer com que os arquivos fossem criados com sucesso
>> também!
>>
>> A partir disso, o que estou tentando agora é pegar o output da
>> função print, se é que isso é possível, e escrever esse output
>> num arquivo (agora sem limite nenhum de bytes).
>>
>> Ou seja, sempre que algo for imprimido no trace, isso será salvo no
>> arquivo em questão.
>>
>> Existe alguma forma de "redirecionar" esse output? Ou então de
>> capturá-lo? Li algo sobre "hooks" no PiL, mas acho que mais uma
>> vez, estou indo num caminho que não é o mais efetivo.
>>
>> Valeu por toda a ajuda até agora galera!
>>
>> []'s!!
>>
>> 2016-02-02 17:44 GMT-02:00 Denis Dos Santos Silva
>> <[hidden email]>:
>>
>> bem,
>> acho que o mais prático seria usar a biblioteca string
>>
>> caso nao consiga, eu faço um exemplo mais tarde.
>>
>> string.sub OU variavel:sub
>> retorna uma nova string
>>
>> parte = string.sub(dados, 1, 10); --- retorna do 1 até o 10
>> parte = string.sub(dados, 10, 20); --- começa do 10 até o 20
>>
>> dai vc grava as partes
>>
>> --- http://lua-users.org/wiki/StringLibraryTutorial [1]
>>
>> S:SUB(I [,J])
>>
>> Return a substring of the string passed. The substring starts at i.
>> If the third argument j is not given, the substring will end at the
>> end of the string. If the third argument is given, the substring
>> ends at and includes j.
>>
>>> = string.sub("Hello Lua user", 7) -- from character 7 until the
>> end
>> Lua user
>>> = string.sub("Hello Lua user", 7, 9) -- from character 7 until and
>> including 9
>> Lua
>>> = string.sub("Hello Lua user", -8) -- 8 from the end until the end
>> Lua user
>>> = string.sub("Hello Lua user", -8, 9) -- 8 from the end until 9
>> from the start
>> Lua
>>> = string.sub("Hello Lua user", -8, -6) -- 8 from the end until 6
>> from the end
>>
>> ---
>>
>> Em terça-feira, 2 de fevereiro de 2016 12:29:54 UTC-2, Ulisses
>> Piassa escreveu:
>> Galera, boa tarde, tudo blz?
>>
>> Estou tentando criar uma função que vai receber um número
>> arbitrário de bytes (por exemplo, 2000 bytes) e que vai escrever em
>> arquivos de até X bytes cada (500 bytes, por exemplo, gerando assim
>> 4 arquivos diferentes.
>>
>> Então crio um handler de arquivo que vai receber os dados a serem
>> escritos. No entanto, não estou conseguindo parar a escrita no
>> tanto de bytes desejado e iniciar a escrita de um outro arquivo.
>> Estive tentando usar o file:setvbuf("full", [,size]), mas não
>> obtive sucesso.
>>
>> Tentei usar também o file:seek, mas também não consegui chegar
>> onde queria.
>>
>> Será que alguém teria alguma luz?
>>
>> Obrigado pessoal!!
>>
>> []'s
>>
>> Ulisses
>>
>> --
>> Você recebeu essa mensagem porque está inscrito no grupo "Lua BR"
>> dos Grupos do Google.
>> Para cancelar inscrição nesse grupo e parar de receber e-mails
>> dele, envie um e-mail para [hidden email].
>> Acesse esse grupo em https://groups.google.com/group/lua-br [2].
>> Para mais opções, acesse https://groups.google.com/d/optout [3].
>
>  --
>  Você recebeu essa mensagem porque está inscrito no grupo "Lua BR"
> dos Grupos do Google.
>  Para cancelar inscrição nesse grupo e parar de receber e-mails
> dele, envie um e-mail para [hidden email].
>  Acesse esse grupo em https://groups.google.com/group/lua-br [2].
>  Para mais opções, acesse https://groups.google.com/d/optout [3].
>
>
> Links:
> ------
> [1] http://lua-users.org/wiki/StringLibraryTutorial
> [2] https://groups.google.com/group/lua-br
> [3] https://groups.google.com/d/optout

--
Você está recebendo esta mensagem porque se inscreveu no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Visite este grupo em https://groups.google.com/group/lua-br.
Para obter mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Dúvida Iniciante: Definir número máximo de bytes para escrita em arquivo

Denis Dos Santos Silva
In reply to this post by Ulisses Piassa
bem, cola seu código aí pra facilitar a compressão...

se conseguiu blz!



Em terça-feira, 2 de fevereiro de 2016 12:29:54 UTC-2, Ulisses Piassa escreveu:
Galera, boa tarde, tudo blz?

Estou tentando criar uma função que vai receber um número arbitrário de bytes (por exemplo, 2000 bytes) e que vai escrever em arquivos de até X bytes cada (500 bytes, por exemplo, gerando assim 4 arquivos diferentes.

Então crio um handler de arquivo que vai receber os dados a serem escritos. No entanto, não estou conseguindo parar a escrita no tanto de bytes desejado e iniciar a escrita de um outro arquivo. Estive tentando usar o file:setvbuf("full", [,size]), mas não obtive sucesso.

Tentei usar também o file:seek, mas também não consegui chegar onde queria.

Será que alguém teria alguma luz?

Obrigado pessoal!!

[]'s

Ulisses

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Dúvida Iniciante: Definir número máximo de bytes para escrita em arquivo

Ulisses Piassa
Então, não posso colar o código por que é de ambiente corporativo, rs. Mas imaginem a seguinte função:

trace = require("api.trace")

analisa_pressao = function(parametro)

  local pressao = math.floor (parametro)

  if (pressao < 0) then
    trace ("Modulo", "ERROR", "Pressao fora da faixa")
  else
    trace(string.format("Modulo", "INFO", "Pressao em %d atm", pressao))
  end
  
end

Imagine que essa função é acionada a cada 1 segundo, poolando um sensor de pressão.

O programa em questão imprime logs a partir da função trace, os quais são pegos pelo TeraTerm. No caso, o que eu quero fazer, é pegar todo o conteúdo desses prints e salvar em um arquivo, ao passo que são impressos na tela.

O problema é que eu não tenho acesso ao módulo que trata esse logs para imprimi-los. Esse módulo (trace, no exemplo) chama a função print() que recebe as strings já tratadas como parâmetro.

O programa utiliza o Lumen, então são vários módulos despejando logs por segundo.

Então não sei se existe uma forma de pegar essas strings ao passo que são impressos na tela pela função print(). Vi algo chamado "hooks" no PiL, que parece que possibilita capturar as funções conforme elas são disparadas. Mas não sei se esse é o melhor caminho. Estou quebrando a cabeça aqui, rsrs.

O caso é essencialmente esse... Alguém já teve que fazer algo parecido?

Valeu!!

2016-02-02 20:12 GMT-02:00 Denis Dos Santos Silva <[hidden email]>:
bem, cola seu código aí pra facilitar a compressão...

se conseguiu blz!



Em terça-feira, 2 de fevereiro de 2016 12:29:54 UTC-2, Ulisses Piassa escreveu:
Galera, boa tarde, tudo blz?

Estou tentando criar uma função que vai receber um número arbitrário de bytes (por exemplo, 2000 bytes) e que vai escrever em arquivos de até X bytes cada (500 bytes, por exemplo, gerando assim 4 arquivos diferentes.

Então crio um handler de arquivo que vai receber os dados a serem escritos. No entanto, não estou conseguindo parar a escrita no tanto de bytes desejado e iniciar a escrita de um outro arquivo. Estive tentando usar o file:setvbuf("full", [,size]), mas não obtive sucesso.

Tentei usar também o file:seek, mas também não consegui chegar onde queria.

Será que alguém teria alguma luz?

Obrigado pessoal!!

[]'s

Ulisses

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Dúvida Iniciante: Definir número máximo de bytes para escrita em arquivo

Tomás Guisasola-2
Oi Ulisses

(Acho que tem um errinho no uso da string.format, mas não vem ao caso
:-)

Se você tem acesso ao programa que chama esse trace, você pode redefinir
a função, ao invés de interceptar.  Por exemplo:

original_trace = require("api.trace")
log_file = assert (io.open (path_completo_arquivo_log, "a+")
function trace (s1, s2, s3) -- estou repetindo a API que você usou no
seu exemplo
   log_file:write (s1, s2, s3)
   original_trace (s1, s2, s3)
end
-- daqui em diante, o programa vai chamar a sua nova 'trace' como se
estivesse chamando a original!

Abraço,
Tomás

On 2016-02-03 10:30, Ulisses Piassa wrote:

> Então, não posso colar o código por que é de ambiente corporativo,
> rs. Mas imaginem a seguinte função:
>
> trace = require("api.trace")
>
> analisa_pressao = function(parametro)
>
>   local pressao = math.floor (parametro)
>
>   if (pressao < 0) then
>
>     trace ("Modulo", "ERROR", "Pressao fora da faixa")
>   else
>     trace(string.format("Modulo", "INFO", "Pressao em %d atm",
> pressao))
>   end
>
> end
>
> Imagine que essa função é acionada a cada 1 segundo, poolando um
> sensor de pressão.
>
> O programa em questão imprime logs a partir da função trace, os
> quais são pegos pelo TeraTerm. No caso, o que eu quero fazer, é
> pegar todo o conteúdo desses prints e salvar em um arquivo, ao passo
> que são impressos na tela.
>
> O problema é que eu não tenho acesso ao módulo que trata esse logs
> para imprimi-los. Esse módulo (trace, no exemplo) chama a função
> print() que recebe as strings já tratadas como parâmetro.
>
> O programa utiliza o Lumen, então são vários módulos despejando
> logs por segundo.
>
> Então não sei se existe uma forma de pegar essas strings ao passo
> que são impressos na tela pela função print(). Vi algo chamado
> "hooks" no PiL, que parece que possibilita capturar as funções
> conforme elas são disparadas. Mas não sei se esse é o melhor
> caminho. Estou quebrando a cabeça aqui, rsrs.
>
> O caso é essencialmente esse... Alguém já teve que fazer algo
> parecido?
>
> Valeu!!
>
> 2016-02-02 20:12 GMT-02:00 Denis Dos Santos Silva <[hidden email]>:
>
>> bem, cola seu código aí pra facilitar a compressão...
>>
>> se conseguiu blz!
>>
>> Em terça-feira, 2 de fevereiro de 2016 12:29:54 UTC-2, Ulisses
>> Piassa escreveu:
>>
>>> Galera, boa tarde, tudo blz?
>>>
>>> Estou tentando criar uma função que vai receber um número
>>> arbitrário de bytes (por exemplo, 2000 bytes) e que vai escrever
>>> em arquivos de até X bytes cada (500 bytes, por exemplo, gerando
>>> assim 4 arquivos diferentes.
>>>
>>> Então crio um handler de arquivo que vai receber os dados a serem
>>> escritos. No entanto, não estou conseguindo parar a escrita no
>>> tanto de bytes desejado e iniciar a escrita de um outro arquivo.
>>> Estive tentando usar o file:setvbuf("full", [,size]), mas não
>>> obtive sucesso.
>>>
>>> Tentei usar também o file:seek, mas também não consegui chegar
>>> onde queria.
>>>
>>> Será que alguém teria alguma luz?
>>>
>>> Obrigado pessoal!!
>>>
>>> []'s
>>>
>>> Ulisses
>>
>> --
>> Você recebeu essa mensagem porque está inscrito no grupo "Lua BR"
>> dos Grupos do Google.
>> Para cancelar inscrição nesse grupo e parar de receber e-mails
>> dele, envie um e-mail para [hidden email].
>> Acesse esse grupo em https://groups.google.com/group/lua-br [1].
>> Para mais opções, acesse https://groups.google.com/d/optout [2].
>
>  --
>  Você recebeu essa mensagem porque está inscrito no grupo "Lua BR"
> dos Grupos do Google.
>  Para cancelar inscrição nesse grupo e parar de receber e-mails
> dele, envie um e-mail para [hidden email].
>  Acesse esse grupo em https://groups.google.com/group/lua-br [1].
>  Para mais opções, acesse https://groups.google.com/d/optout [2].
>
>
> Links:
> ------
> [1] https://groups.google.com/group/lua-br
> [2] https://groups.google.com/d/optout

--
Você está recebendo esta mensagem porque se inscreveu no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Visite este grupo em https://groups.google.com/group/lua-br.
Para obter mais opções, acesse https://groups.google.com/d/optout.