SA-MP Forums Archive
[Include] JBSave - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+----- Forum: Lançamentos/Releases (https://sampforum.blast.hk/forumdisplay.php?fid=56)
+----- Thread: [Include] JBSave (/showthread.php?tid=654254)



JBSave - JohnBlack - 24.05.2018

Saudaзхes internautas,

Primeiramente gostaria de deixar claro que esta include que deixo aqui nгo й algo que me orgulho, e sim algo (muito) simples que compartilho com a comunidade caso seja ъtil para mais alguйm alйm de mim.
Eu particularmente sempre utilizo MySQL como base de salvamento para meus servidores, mas ocasionalmente utilizo tambйm algumas includes de salvamento em documento de texto local, para outros servidores que programo.
Porйm sinceramente nгo gosto muito de utilizar DOF2 (e nem vou falar sobre dini), entгo desenvolvi rapidamente esta include em que, ainda nгo fiz os testes, mas me parece que executa as funзхes mais rapidamente (apesar de possivelmente alocar mais memуria que as demais includes, nгo investiguei muito sobre isso).

Eu diria que um ponto positivo que esta include tem perante as outras que salvam em documento de texto й a maior eficiкncia, rapidez ao executar o comando.
O ponto negativo й que o documento de texto possui um limite de 511 caracteres a serem escritos. Se quiser vocк mesmo pode mudar isto aumentando o tamanho da array 'jb_file'. Mas que fique claro que quanto maior o tamanho da array, maior a alocaзгo de memуria. Mas se memуria (RAM) nгo й problema pra vocк, pode aumentar tranquilamente.

Como acredito eu que esta include nгo serб considerada grandes coisas, provavelmente nгo vou melhorб-la (pode ser melhorada e muito ainda). Que seja, que o futuro decida isso. Por hora, aqui estб.

https://github.com/JohnBlack19/JBSave/releases

Como utilizar:

Para escrever, ler ou criar um arquivo, vocк deve utilizar
Код:
JB_Open("Nome_do_arquivo.extensгo");
Exemplo:
Код:
JB_Open("Arquivo.txt");
Todas as funзхes a seguir sу poderгo ser executadas se vocк antes tiver aberto o arquivo.

Para escrever um nъmero inteiro no arquivo aberto anteriormente:
Код:
JB_SetInt("Menu", valor);
Exemplo:
Код:
JB_SetInt("Admin", 1);
Para escrever um Floating point no arquivo aberto anteriormente:
Код:
JB_SetFloat("Menu", valor);
Exemplo:
Код:
JB_SetFloat("Vida", 100.0);
Para escrever um boolean no arquivo aberto anteriormente:
Код:
JB_SetBool("Menu", valor);
Exemplo:
Код:
JB_SetBool("Verdadeiro", true);
Apуs ter escrito algo, sempre se deve salvar o arquivo, caso contrбrio, nгo serб salvo.
Para isso, utilize
Код:
JB_Save();
Por enquanto apenas criei para escrever Inteiros, Floats e Booleans, bem parecido com DOF2.
Para 'getar' os valores, й a mesma lуgica.
Код:
JB_GetInt("Menu");
JB_GetFloat("Menu");
JB_GetBool("Menu");
Os valores sгo retornados na funзгo.

Depois de ter feito tudo que lhe interessava com aquele arquivo, lembre-se de fechб-lo com
Код:
JB_Close();
Vocк nгo poderб abrir outro arquivo sem antes fechб-lo.
Tambйm nгo poderб fechб-lo sem antes salvб-lo (claro, apenas se escreveu algo).

Para aqueles que forem visualizar o cуdigo da include, reforзo que a funзгo JB_Write nгo deve ser utilizada jamais.


Re: JBSave - F1N4L - 24.05.2018

Nгo possui funзгo para String?

Quote:

"Esta funзгo NГO deve ser utilizada"

Suponho que a funзгo que contenha este comentбrio deve ser utilizada somente internamente pela include. Neste caso crie uma funзгo estбtica: static stock JB_Write()

Й uma include limitada, ao meu ver, pois nгo й possнvel trabalhar simultaneamente, correto?
Vocк sу pode abrir um arquivo por vez, pelo que pude ver.

Para salvamento de pequenas coisas, esta include й uma boa opзгo, apenas contйm funзхes bбsicas se comparado com demais includes.

Conclusгo:

Acredito que vocк a criou a fins de estudos e nгo por necessidade, jб que sua preferкncia й por MySQL.
Sua include, de fato, nгo й grande coisa, assim como a que eu desenvolvi.
A semelhanзa entre minha include de salvamento e a sua estб no propуsito da experiкncia e nгo na necessidade ou mesmo no cуdigo, pois hб opзхes melhores em termos de funcionalidades.

Parabйns pelo desenvolvimento.
Uma include de salvamento em texto envolve bastante lуgica e й esse raciocнnio que nos faz crescer, nгo sу como programadores!
+Rep.


Re: JBSave - JohnBlack - 24.05.2018

Quote:
Originally Posted by F1N4L
Посмотреть сообщение
Nгo possui funзгo para String?


Suponho que a funзгo que contenha este comentбrio deve ser utilizada somente internamente pela include. Neste caso crie uma funзгo estбtica: static stock JB_Write()

Й uma include limitada, ao meu ver, pois nгo й possнvel trabalhar simultaneamente, correto?
Vocк sу pode abrir um arquivo por vez, pelo que pude ver.

Para salvamento de pequenas coisas, esta include й uma boa opзгo, apenas contйm funзхes bбsicas se comparado com demais includes.

Conclusгo:

Acredito que vocк a criou a fins de estudos e nгo por necessidade, jб que sua preferкncia й por MySQL.
Sua include, de fato, nгo й grande coisa, assim como a que eu desenvolvi.
A semelhanзa entre minha include de salvamento e a sua estб no propуsito da experiкncia e nгo na necessidade ou mesmo no cуdigo, pois hб opзхes melhores em termos de funcionalidades.

Parabйns pelo desenvolvimento.
Uma include de salvamento em texto envolve bastante lуgica e й esse raciocнnio que nos faz crescer, nгo sу como programadores!
+Rep.
Muito obrigado pela consideraзгo.
Realmente nгo possui funзгo para String pois atй o momento nгo foi necessбrio para mim (e sinceramente havia me esquecido de tк-la criado).
Agradeзo tambйm pela dica quanto ao JB_Write.
De fato, realmente й limitada pois tem apenas como lidar com um arquivo por vez, o que pra mim nunca foi um problema, alйm de ter possibilitado uma melhor funcionalidade da include.


Re: JBSave - Pool - 29.05.2018

Good job.