Ir para conteúdo

Como pegar simbolos de pastas .yml com


AlissonLopes

Posts Recomendados

Galera eu estou fazendo um plugin que utiliza config, eu não por que "********s" a config está retornado esse simbolo "➣" como isso: "➣", alguém sabe o porque? ou um método em java para converter, ah esses tbm "Ç", "É".

PS: Eu não quero usar "replace" por que o código ia ser muito grande pra dar "replace" em tudo...

Link para o comentário
Compartilhar em outros sites

5 minutos atrás, AlissonDev disse:

Galera eu estou fazendo um plugin que utiliza config, eu não por que "********s" a config está retornado esse simbolo "➣" como isso: "➣", alguém sabe o porque? ou um método em java para converter, ah esses tbm "Ç", "É".

PS: Eu não quero usar "replace" por que o código ia ser muito grande pra dar "replace" em tudo...

Usa o charmap pra pega símbolos em unicode

Link para o comentário
Compartilhar em outros sites

1 minuto atrás, RUSHyoutuber disse:

eu uso todo tipo de caracter maluco e funciona perfeitamente sem precisar disso... o problema deve ser a codificação do arquivo ou do servidor.

Sim, se ele estiver usando um servidor localhost ele pode usar um convertor no run.bat para converter todos os plugins em UTF-8, ou simplesmente na própria yml do plugin

Link para o comentário
Compartilhar em outros sites

Basta você colocar para ler sua config em charset UTF-8, creio que já resolve seu problema.

Tente usar isso:

			
			File file = new File(plugin.getDataFolder(), "config.yml");
			
			YamlConfiguration config = YamlConfiguration
					.loadConfiguration(new InputStreamReader(new FileInputStream(file), Charset.forName("UTF-8")));
			
			
			String messagem = config.getString("hello-world");

 

Link para o comentário
Compartilhar em outros sites

17 minutos atrás, kikuti disse:

Sim, se ele estiver usando um servidor localhost ele pode usar um convertor no run.bat para converter todos os plugins em UTF-8, ou simplesmente na própria yml do plugin

??? Cara o fato de ser localhost ou não, não interfere em nada, independentemente de onde esta alocado o servidor, a .bat tem que executar o comando do java informando a codificação, no caso uft-8, talvez até de pra alterar alguma configuração do java para que a codificação padrão seja utf-8

 

e até onde eu sei pra alterar a codificação do arquivo tem que ser direto pelo editor de texto, notepad++ ou outro que seja.

 

Não adianta nada o servidor estar ligando em UTF-8 e o arquivo estar em ASCII

Link para o comentário
Compartilhar em outros sites

2 minutos atrás, Sr_Edition disse:

Basta você colocar para ler sua config em charset UTF-8, creio que já resolve seu problema.

Tente usar isso:


			
			File file = new File(plugin.getDataFolder(), "config.yml");
			
			YamlConfiguration config = YamlConfiguration
					.loadConfiguration(new InputStreamReader(new FileInputStream(file), Charset.forName("UTF-8")));
			
			
			String messagem = config.getString("hello-world");

 

mesmo assim vai dar problema se o servidor não estiver iniciando em UTF-8 como eu citei acima.

Link para o comentário
Compartilhar em outros sites

2 minutos atrás, RUSHyoutuber disse:

mesmo assim vai dar problema se o servidor não estiver iniciando em UTF-8 como eu citei acima.

Eu falei, se ele estiver usando localhost usar o run.bat pra converter não pra abrir, converter todos os ymls pra UTF-8, mas isso só vai resolver pra ele, é mais fácil testar o código do amigo a cima ou botar tudo em unicode

Link para o comentário
Compartilhar em outros sites

2 minutos atrás, RUSHyoutuber disse:

mesmo assim vai dar problema se o servidor não estiver iniciando em UTF-8 como eu citei acima.

antigamente eu usava todos os "Characters" malucos e ia de boas. mas agora só funciona se eu usar isso "-Dfile.encoding=UTF-8" depois da -jar na .bat, enfim eu não queria usar replace por que e um metodo "deprecated".

Link para o comentário
Compartilhar em outros sites

1 minuto atrás, AlissonDev disse:

antigamente eu usava todos os "Characters" malucos e ia de boas. mas agora só funciona se eu usar isso "-Dfile.encoding=UTF-8" depois da -jar na .bat, enfim eu não queria usar replace por que e um metodo "deprecated".

Alisson, ignora o que ele falou e só faz o que eu te mandei alí, te garanto sucesso

Link para o comentário
Compartilhar em outros sites

1 minuto atrás, Sr_Edition disse:

Alisson, ignora o que ele falou e só faz o que eu te mandei alí, te garanto sucesso

pra pasta "config.yml" eu estou usando o próprio sistema do "bukkit", pra outras tipo: "tags.yml" eu estou usando o sistema "YAML", eu vou testar uma coisa, eu tava utilizando dependências do "Maven", isso gerou arquivos de preferência no projeto na pasta ".settings" que eu acredito que esteja causando esse erro, se não der certo eu testo o seu método e retorno com a resposta.

Link para o comentário
Compartilhar em outros sites

14 minutos atrás, kikuti disse:

Eu falei, se ele estiver usando localhost usar o run.bat pra converter não pra abrir, converter todos os ymls pra UTF-8, mas isso só vai resolver pra ele, é mais fácil testar o código do amigo a cima ou botar tudo em unicode

existe algum arquivo que converte todos os yml pra utf-8 automaticamente quando o server inicia? me manda ai please

 

14 minutos atrás, AlissonDev disse:

antigamente eu usava todos os "Characters" malucos e ia de boas. mas agora só funciona se eu usar isso "-Dfile.encoding=UTF-8" depois da -jar na .bat, enfim eu não queria usar replace por que e um metodo "deprecated".

exatamente isso que eu quis dizer

 

12 minutos atrás, Sr_Edition disse:

Alisson, ignora o que ele falou e só faz o que eu te mandei alí, te garanto sucesso

cara, as vezes o problema é no .bat que inicia o servidor e não na config.yml, tem que fazer o teste como eu falei

Link para o comentário
Compartilhar em outros sites

9 minutos atrás, RUSHyoutuber disse:

existe algum arquivo que converte todos os yml pra utf-8 automaticamente quando o server inicia? me manda ai please

 

exatamente isso que eu quis dizer

 

cara, as vezes o problema é no .bat que inicia o servidor e não na config.yml, tem que fazer o teste como eu falei

arquivo não existe, pois só tenho o meu plugin no server.

Link para o comentário
Compartilhar em outros sites

32 minutos atrás, Sr_Edition disse:

Alisson, ignora o que ele falou e só faz o que eu te mandei alí, te garanto sucesso

testei aqui e funcionou, vlw, agora uma duvida básica, por que a config.yml tava convertendo em outo formato e não UTF-8?Tu saberia me responder?

Link para o comentário
Compartilhar em outros sites

2 minutos atrás, AlissonDev disse:

testei aqui e funcionou, vlw, agora uma duvida básica, por que a config.yml tava convertendo em outo formato e não UTF-8?Tu saberia me responder?

cara ai eu já não sei, meu notepad++ fica sempre desse jeito http://prntscr.com/min0cp

eu alterei 1 vez só quando eu baixei o programa dps ficou assim pra sempre e NUNCA tive NENHUM problema.

Link para o comentário
Compartilhar em outros sites

3 minutos atrás, RUSHyoutuber disse:

cara ai eu já não sei, meu notepad++ fica sempre desse jeito http://prntscr.com/min0cp

eu alterei 1 vez só quando eu baixei o programa dps ficou assim pra sempre e NUNCA tive NENHUM problema.

convertendo pro IChatBaseComponent que é o sistema de texto que os packets usam.

Link para o comentário
Compartilhar em outros sites

6 horas atrás, AlissonDev disse:

testei aqui e funcionou, vlw, agora uma duvida básica, por que a config.yml tava convertendo em outo formato e não UTF-8?Tu saberia me responder?

Quando você cria um arquivo tanto com o notpad++ quanto com sua IDE você edita ele em determinado charset.
Algumas vezes dependendo da máquina em que o servidor está rodando o charset padrão de leitura de arquivos do java pode não estar lendo no charset em que o arquivo foi salvo. Nesse caso você poderia salvar qualquer arquivo em UTF-8 q não funcionaria com a config padrão do Bukkit.
 

Com esse método que eu te mandei você está "forçando" a config ler o arquivo com o charset UTF-8, logo não tem com que se preocupar ?

 

Eu esperto ter ajudado e lembre-se TODOS os plugins que você fizer a partir de hoje use esse código que eu te mandei, pois as vezes o  charset pode estar funcionando na sua máquina mas nas máquinas dos outros ele não funciona.

Link para o comentário
Compartilhar em outros sites

3 horas atrás, Sr_Edition disse:

Quando você cria um arquivo tanto com o notpad++ quanto com sua IDE você edita ele em determinado charset.
Algumas vezes dependendo da máquina em que o servidor está rodando o charset padrão de leitura de arquivos do java pode não estar lendo no charset em que o arquivo foi salvo. Nesse caso você poderia salvar qualquer arquivo em UTF-8 q não funcionaria com a config padrão do Bukkit.
 

Com esse método que eu te mandei você está "forçando" a config ler o arquivo com o charset UTF-8, logo não tem com que se preocupar ?

 

Eu esperto ter ajudado e lembre-se TODOS os plugins que você fizer a partir de hoje use esse código que eu te mandei, pois as vezes o  charset pode estar funcionando na sua máquina mas nas máquinas dos outros ele não funciona.

Cara não sei da onde você tirou essa lógica, o System que é o meu essentials não especifica o Charset na hora de dar loadConfiguration() e eu nunca tive problemas com isso, o plugin ta com mais de 2K de downloads e ninguem nunca veio me reportar nenhum problema relacionado a isso, alias, nenhum plugin meu teve esse problema e eu nunca usei essa parada ai de Charset, a unica coisa que eu fiz foi deixar o notepad++ codificado em uft-8

 

Eu acho meio forçado você mandar alguem usar esse código ali em TODOS os plugins sendo que o problema esta na hora de salvar o arquivo e não na hora de ler o arquivo dependendo do caso.

 

E como eu falei anteriormente não adianta nada usar esse código ali se o servidor não estiver iniciando em UTF-8.

 

https://github.com/RUSHyoutuber/System/blob/master/src/rush/utils/manager/ConfigManager.java

Link para o comentário
Compartilhar em outros sites

4 horas atrás, Sr_Edition disse:

Quando você cria um arquivo tanto com o notpad++ quanto com sua IDE você edita ele em determinado charset.
Algumas vezes dependendo da máquina em que o servidor está rodando o charset padrão de leitura de arquivos do java pode não estar lendo no charset em que o arquivo foi salvo. Nesse caso você poderia salvar qualquer arquivo em UTF-8 q não funcionaria com a config padrão do Bukkit.
 

Com esse método que eu te mandei você está "forçando" a config ler o arquivo com o charset UTF-8, logo não tem com que se preocupar ?

 

Eu esperto ter ajudado e lembre-se TODOS os plugins que você fizer a partir de hoje use esse código que eu te mandei, pois as vezes o  charset pode estar funcionando na sua máquina mas nas máquinas dos outros ele não funciona.

ok irei fazer isso thanks.:baladinha:

Link para o comentário
Compartilhar em outros sites

59 minutos atrás, RUSHyoutuber disse:

Cara não sei da onde você tirou essa lógica, o System que é o meu essentials não especifica o Charset na hora de dar loadConfiguration() e eu nunca tive problemas com isso, o plugin ta com mais de 2K de downloads e ninguem nunca veio me reportar nenhum problema relacionado a isso, alias, nenhum plugin meu teve esse problema e eu nunca usei essa parada ai de Charset, a unica coisa que eu fiz foi deixar o notepad++ codificado em uft-8

 

Eu acho meio forçado você mandar alguem usar esse código ali em TODOS os plugins sendo que o problema esta na hora de salvar o arquivo e não na hora de ler o arquivo dependendo do caso.

 

E como eu falei anteriormente não adianta nada usar esse código ali se o servidor não estiver iniciando em UTF-8.

 

https://github.com/RUSHyoutuber/System/blob/master/src/rush/utils/manager/ConfigManager.java

Mano mas mesmo a pasta de configuração estando em outra codificação se eu ler em UTF-8 vai se resolver, eu pesquisei no stackoverflow, e no fórum do bukkit e spigot e muitos estavam com o problema igual o meu.

Link para o comentário
Compartilhar em outros sites

1 minuto atrás, AlissonDev disse:

Mano mas mesmo a pasta de configuração estando em outra codificação se eu ler em UTF-8 vai se resolver, eu pesquisei no stackoverflow, e no fórum do bukkit e spigot e muitos estavam com o problema igual o meu.

pasta de configuração que pasta de configuração? 

vou gravar 1 vídeo pra tentar fazer vcs entenderem

é só com vcs mesmo que da isso ai kkkkk vcs devem fazer algo de errado não faria sentido você precisar criar um método em novo em vez de usar simplesmente o getConfig() que é da BukkitAPI

Link para o comentário
Compartilhar em outros sites

17 minutos atrás, RUSHyoutuber disse:

pasta de configuração que pasta de configuração? 

vou gravar 1 vídeo pra tentar fazer vcs entenderem

é só com vcs mesmo que da isso ai kkkkk vcs devem fazer algo de errado não faria sentido você precisar criar um método em novo em vez de usar simplesmente o getConfig() que é da BukkitAPI

mano eu criei um static void getYaml(), pra fazer isso, e um método bom pra resolver os possíveis bugs de caracteres em todos os PCs.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...