Maven i polskie znaki

0

Mam problem z polskimi ogonkami. Wiem, że temat wałkowany wielokrotnie i dużo napisano na ten temat, jednak pomimo kilkugodzinnego szukania w necie i kombinowania nie udaje mi się znaleźć rozwiązania, choć domyślam się, że to jakiś banał.
Poniżej zamieszczam prosty programik, który odpalam w Windows. Program przyjmuje napis z konsoli a następnie go wypisuje. Co i jak należy poprawić, żeby działało to dla znaków narodowych?

 
public class Witaj {
    public static void main(String[] args) throws UnsupportedEncodingException, IOException {
        System.out.println("napisz coś:");
        String echo;

        Scanner in = new Scanner(System.in);

        echo = in.nextLine();
        System.out.println("echo: " + echo);
    }
}

Plik pom.xml:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.mycompany</groupId>
    <artifactId>EchoPolskieLitery</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>jar</packaging>
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
    </properties>
</project>

Pozdrawiam
Tomek

P.S. Zalaczam ten projekt, jakby ktos chcial sprawdzic.

0

Zamień polskie znaki zgodnie z tą tabelką:

Ą - \u0104; ą - \u0105
Ć - \u0106; ć - \u0107
Ę - \u0118; ę - \u0119
Ł - \u0141; ł - \u0142
Ń - \u0143; ń - \u0144
Ó - \u00d3; ó - \u00f3
Ś - \u015a; ś - \u015b
Ź - \u0179; ź - \u017a
Ż - \u017b; ż - \u017c

Lub http://4programmers.net/Java/FAQ/Polskie_znaki

0

Problemem nie jest Maven, a konsola windowsa, która działa w kodowaniu CP-1250 i takie też jest domyślne kodowanie dla strumienia System.out. Dodaj na początku coś w rodzaju:

System.setOut(new PrintStream(System.out, true, "utf-8"));

i powinno działać (choć głowy nie dam, bo piszę to z pamięci).

0

Tak na szybko co ci znalazłem to spróbuj dodać taki kod do konfiguracji Mavena (czyli do pom.xml):

 
<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
</properties>
0

Dolaczylem archiwum zip projektu do poczatkowego posta.

1 użytkowników online, w tym zalogowanych: 0, gości: 1