Вот

му я пытаюсь заставить мою программу выводить текстовый файл со списком имен. Некоторые из имен имеют странные символы, такие как Åström.

Я взял этот список имен с веб-страницы, которая закодирована в «UTF-8», или, по крайней мере, я уверен, что это так, потому что источник страницы говорит

"meta http-equ =" Content-Type "content =" text / html; charset = UTF-8 "/"

Это то, что я пробовал до сих пор:

public static void write(List<String> list) throws IOException  {
        Writer out = new OutputStreamWriter(new FileOutputStream("test.txt"), "UTF-8");
        try {
            for (int i=0;i<list.size();i++) {
                try {
                    byte[] utf8Bytes = list.get(i).getBytes("UTF-8");
                    out.write(new String(utf8Bytes, "UTF-8"));
                } catch (UnsupportedEncodingException e) {
                    e.printStackTrace();
                }

                out.write(System.getProperty("line.separator"));

            }
        }
        finally {
        out.close();
        }
    }

и я немного запутался, почему это не работает. Вывод, который я получаю, - «Стрим», что очень странно.

Может кто-нибудь, пожалуйста, укажите мне в правильном направлении? Спасибо!

И на другой несвязанной заметке, есть ли более простой способ написать новую строку в текстовый файл, кроме неуклюжий

out.write (System.getProperty ( "line.separator"));

что у меня есть? Я где-то видел это онлайн, и оно работает, но мне было просто интересно, есть ли более чистый путь.

Ответы на вопрос(3)

Ваш ответ на вопрос