1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Problemas com codificação de arquivo texto utf-8 em java. Como abrir pelo bloco de notas um arquivo criado e ele continuar com a mesma codificação?

Bom dia Galera, estou desenvolvendo um software para transposição de cifras musicais. A lógica do programa é da seguinte maneira:

  1. Dois campos de texto para digitar o cantor e o nome da música;
    1. Um botão com a descrição "Editor" . Quando clico nesse botão eu crio um arquivo texto e abro o mesmo pelo bloco de notas para a pessoa escrever ou colar a cifra da música.
        try {

            //Criar o diretorio C:\Cifras
            File diretorio = new File("C:\\Cifras");
            diretorio.mkdir();

            String musica = fieldNomeMusica.getText().trim();
            String cantor = fieldCantor.getText().trim();
            String nomeArquivo = musica + " - " + cantor + ".txt";


            BufferedWriter fw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("C:\\Cifras\\" + nomeArquivo), "UTF-8"));

            OutputStreamWriter bufferOut = new OutputStreamWriter(new FileOutputStream("C:\\Cifras\\" + nomeArquivo), "UTF-8");
            bufferOut.close();
            fw.close();

            String arquivoSalvo = "C:\\Cifras\\" + nomeArquivo;

            Runtime rs = Runtime.getRuntime();
            rs.exec("notepad " + arquivoSalvo);

        } catch (Exception e) {
            System.out.println(e);
        }
  1. Quando o usuário termina de colar a música, ele deve salvar o arquivo. (Como o arquivo já foi criado, basta apenas apertar o "salvar" ou "ctrl + S" para que ele salve automaticamente.

Só que é aí que vem o problema. O arquivo nesse exato momento está salvando ANSI, e quando eu vou transpor os acordes, a letra da música que contém caractere de acentuação fica toda detonada. Já tentei utilizar todas as dicas do fórum para a codificação e até o momento persiste o erro. Se alguém puder contribuir agradeceria imensamente. Vlw!

  • Ninguém pode dar um help??

    jeffersondefaria   06 de out de 2015
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

0 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags arquivos ou faça a sua própria pergunta.