Про 200 webpack-плагінів для перформансу на конференції JavaScript fwdays'20 | 14 березня
×Закрыть

Java encoding як параметр методу

Доброго дня усім! Ніяк не вдається передати методу параметр encoding. Ніхто не підкаже, що потрібно змінити, щоб функція записувала з таким кодуванням, яке передається у параметрі?

  public static void saveToCsvFile(String encoding) throws NoSuchFieldException, IllegalAccessException {

    
             File fileResults = new File("Results_" + savedFileCounter + encoding+".xls");
              try ( PrintWriter prwr = new PrintWriter(new OutputStreamWriter(new FileOutputStream(fileResults),
                "StandardCharsets."+encoding), true)) {

            prwr.println("ATTENTION! SUBSTITUTE ALL '$' SIGNES FOR COMMAS");
            prwr.println("ORIGINAL" + ", TRANSLATION");
            for (Map.Entry<String, String> entry : mapEquivalents.entrySet()) {
                prwr.println(entry.getKey().replaceAll(",", "\\$") + "," + entry.getValue().replaceAll(",", "\\$"));
            }
        } catch (IOException e) {
            JOptionPane.showMessageDialog(AlignFrame.mainPnl, "Problems saving file");
        }
        savedFileCounter++;
    }
LinkedIn
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
JOptionPane

Свинг это больно, очень больно :(

Заменить входящий тип на StandardCharsets и передавать туда значение из енама?

К сожалению, не полчилось, но все равно спасибо за идею!

а если заменить "StandardCharsets."+encoding на Charset.forName(encoding)?

а вообще я бы бежал от Свинга

Спасибо огромное, помогло! Загвоздка была в том, что в стандартном чарсете нижнее подчеркивание, и очень сильно к нему привязывался.

Подписаться на комментарии