Spanish Problemas con caracteres especiales (ñ, ª) en SQLite

Discussion in 'Spanish Forum' started by Edu Portu, Jul 21, 2015.

  1. Edu Portu

    Edu Portu Member Licensed User

    Hola a todos,

    En mi programa tengo que importar un fichero de texto a una base de datos SQLite, es un fichero de clientes en el que puede haber caracteres especiales como ñ, Ñ, Mª...

    Lo unico que hago es abrir el fichero de texto, leer la linea y realizar un INSERT en la bd

    Code:
    reader.Initialize(File.OpenInput(Main.DBFileDir, "clts.txt"))
    cadena = reader.ReadLine
    Main.SQLDFAV.ExecNonQuery(
    "INSERT INTO clts VALUES ('" & funciones.Mid(cadena,1,30) & "'")
    Pues bien, estos caracteres especiales no me los coge bien, sino que muestra una especie de rombo con una interrogacion dentro...

    Ademas luego a la hora de imprimir los listados o exportar los datos de SQLite a texto mete varios caracteres raros por lo que me descoloca todo... Como podria hacer para que estos caracteres especiales se importen correctamente?

    Saludos y gracias
    Edu
     
  2. Jose7

    Jose7 New Member Licensed User

    Hola, yo mucho no te puedo ayudar, pero un ejemplo de que quieres meter y que dato te sale despues, podria facilitar que tipo de codificacion esta utilizando, quizas luego tan solo sea convertir de nuevo la codificacion al original.
     
  3. dar2o3

    dar2o3 Active Member Licensed User

    Buenas tardes, el archivo "clts.txt" como se creo? si se guarda como texto ascii los carácteres no ascii se pierden, tienes que guardar el texto como utf8, me juego un café a que es ese tu problema.

    Abre con el note4pad de windows ese archivo y comprueba el texto que contiene, así sabrás si el problema viene de como se guarda el archivo de texto.

    También podría ser que la bd de sqlite guarde los datos en las tablas en una codificación diferente a utf8, te recomiendo usar SQlite expert personal, te deja cambiar ese tipo de cosas y es gratuito.
     
    Last edited: Jul 21, 2015
    cimperia likes this.
Loading...