"MalformedInputException: Input length = 1 " exception solution for Scala and Java

Recently i was adding more values to the resource file in my Fabricator project and , looke like added values that are invalid for UTF-8 encoding. My next trial to execute tests for the project brought me to "MalformedInputException: Input length = 1 " exception. For scala code i managed to find a very easy solution.
Instead of

Json.parse(Source.fromInputStream(getClass().getClassLoader().
getResourceAsStream(lang + ".json")).mkString)

I'm using now this line of code :

Json.parse(Source.fromInputStream(getClass().getClassLoader().
getResourceAsStream(lang + ".json"))("UTF-8").mkString)

For Java, you'll have to write a bit more lines of code, but eventually you'll be able to find your "failing" symbols and maybe change them to UTF-8-proper-ones.

FileInputStream input;
    String result = null;
    try {
        input = new FileInputStream(new File("invalid.txt"));
        CharsetDecoder decoder = Charset.forName("UTF-8").newDecoder();
        decoder.onMalformedInput(CodingErrorAction.IGNORE);
        InputStreamReader reader = new InputStreamReader(input, decoder);
        BufferedReader bufferedReader = new BufferedReader( reader );
        StringBuilder sb = new StringBuilder();
        String line = bufferedReader.readLine();
        while( line != null ) {
            sb.append( line );
            line = bufferedReader.readLine();
        }
        bufferedReader.close();
        result = sb.toString();
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    } catch( IOException e ) {
        e.printStackTrace();
    }
    System.out.println(result);

If your file has for example hellö wörld in it, then with .REPLACE command you see the standard unicode replacement character being used:

    //"h�ellö� wö�rld�"

With .IGNORE, you see the invalid bytes ignored:

    //"hellö wörld"

Without specifying .onMalformedInput, you get:

    java.nio.charset.MalformedInputException: Input length = 1
    at java.nio.charset.CoderResult.throwException(Unknown Source)
    at sun.nio.cs.StreamDecoder.implRead(Unknown Source)
    at sun.nio.cs.StreamDecoder.read(Unknown Source)
    at java.io.InputStreamReader.read(Unknown Source)
    at java.io.BufferedReader.fill(Unknown Source)
    at java.io.BufferedReader.readLine(Unknown Source)
    at java.io.BufferedReader.readLine(Unknown Source)

The solution was found on stackoverflow