project-openubl / searchpe

Descarga la base de datos de la SUNAT y lo almacena en tu propio servidor
https://project-openubl.github.io/
Apache License 2.0
9 stars 6 forks source link

UTF8 decode #40

Closed L4fv closed 3 years ago

L4fv commented 3 years ago

hola estuve probando el api mediante el manual de docker. pero la api me devuelve con caracteres extraños para las ñ y tildes ejemplo: ruc 10717046850 resultado: YARINGA�O Estaré revisando igualmente y les comento en caso tenga un PR

carlosthe19916 commented 3 years ago

@L4fv Es cierto lo que mencionas. El problema real es que el padrón reducido de la SUNAT parece no tener un Charset definido para todo el archivo. En situaciones normales, bastaría con modificar esta linea:

https://github.com/project-openubl/searchpe/blob/master/src/main/java/io/github/project/openubl/searchpe/managers/UpgradeDataManager.java#L119

try (BufferedReader br = new BufferedReader(new FileReader(file))) {

Y convertirlo a:

try (BufferedReader br = new BufferedReader(new FileReader(file, StandardCharsets.ISO_8859_1))) {

Con eso debería de ser suficiente para leer un archivo con caracteres especiales como la tilde o ñ. Hace tiempo probé hacer el cambio pero arreglaba las tiltes y ñ pero por otro lado malograba otros caracteres especiales como los espacios.

Si tienes alguna idea de cómo solucionar este problema con gusto podemos intentarlo juntos.