MalformedInputException - input length = 1 reading ú

Issue #1091 invalid
Reuben Firmin created an issue

Yaml file:

heading:
  manage: El menú

…causes an exception to be thrown when read using:

        val resource = getResource("i18n/Splash_es.yaml")

        val yaml = Yaml()
        val results = yaml.load<String>(resource.openStream())

Stacktrace:

java.nio.charset.MalformedInputException: Input length = 1
org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: Input length = 1
    at org.yaml.snakeyaml.reader.StreamReader.update(StreamReader.java:215)
    at org.yaml.snakeyaml.reader.StreamReader.ensureEnoughData(StreamReader.java:173)
    at org.yaml.snakeyaml.reader.StreamReader.ensureEnoughData(StreamReader.java:168)
    at org.yaml.snakeyaml.reader.StreamReader.peek(StreamReader.java:123)
    at org.yaml.snakeyaml.scanner.ScannerImpl.scanToNextToken(ScannerImpl.java:1204)
    at org.yaml.snakeyaml.scanner.ScannerImpl.fetchMoreTokens(ScannerImpl.java:320)
    at org.yaml.snakeyaml.scanner.ScannerImpl.checkToken(ScannerImpl.java:238)
    at org.yaml.snakeyaml.parser.ParserImpl$ParseImplicitDocumentStart.produce(ParserImpl.java:210)
    at org.yaml.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:161)
    at org.yaml.snakeyaml.parser.ParserImpl.checkEvent(ParserImpl.java:152)
    at org.yaml.snakeyaml.composer.Composer.getSingleNode(Composer.java:156)
    at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleData(BaseConstructor.java:178)
    at org.yaml.snakeyaml.Yaml.loadFromReader(Yaml.java:493)
    at org.yaml.snakeyaml.Yaml.load(Yaml.java:434)

Comments (6)

  1. Andrey Somov

    A test is the best way to show the problem. SnakeYAML has many tests inside which check that this code should work. What is the file encoding ? YAML has a strict policy for the encoding (defined by BOM)

  2. Log in to comment