Ich brauche dringend Hilfe mit SQLite Version 3 und C# (Visual Studio Express 20120)
Es besteht eine Datenbank die nicht abgeändert werden kann. Die Felder die auszulesen sind, sind vom Typ „varchar“. Ich soll zwei zusätzliche Programme in C# schreiben. Das Problem dabei ist dass die deutschen Umlaute nicht richtig dargestellt werden. Dabei habe ich schon alle möglich SQLite Connection Strings mit jeglicher Codierung ausprobiert (UTF8,UTF16 und ASCII).
Dabei habe ich folgenden Code verwendet:
Es geht dabei nur um die Methode buttonGo_Click(), welche das DataSet mit den Daten aus der Datenbank füllt. Jedoch werden die deutschen Umlaute falsch dargestellt. Das Problem ist dass es sich dabei nur um ein Zeichen, für alle Umlaute handelt, so dass man die Umlaute daraus nicht differenzieren kann. Wie muss ich vorgehen damit dieses Problem behoben werden kann?
Muss ich irgendwie mit System.Text.Encoding arbeiten ? Ich finde im Netz keinen richtigen Ansatz. Daher bitte ich um Hilfe!
Vielen Dank im voraus!
Es besteht eine Datenbank die nicht abgeändert werden kann. Die Felder die auszulesen sind, sind vom Typ „varchar“. Ich soll zwei zusätzliche Programme in C# schreiben. Das Problem dabei ist dass die deutschen Umlaute nicht richtig dargestellt werden. Dabei habe ich schon alle möglich SQLite Connection Strings mit jeglicher Codierung ausprobiert (UTF8,UTF16 und ASCII).
Dabei habe ich folgenden Code verwendet:
Code:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Data.SQLite; namespace SQLite64FormDBTest { public partial class Form1 : Form { const string DataSourceFile = @"D:\Test\Werkstattoffice\automan.crm; "; const string DataSourceVersion="Version=3; "; const string EncodingAscii="Encoding=ASCII;"; const string EncodingUTF8="UTF8Encoding=true;"; const string EncodingUTF16="UTF16Encoding=true;"; public Form1() { InitializeComponent(); } private void buttonClose_Click(object sender, EventArgs e) { this.Close(); } private void buttonGo_Click(object sender, EventArgs e) { const string sql = "select * from tblKunde;"; var conn = new SQLiteConnection("Data Source=" + DataSourceFile + DataSourceVersion + EncodingUTF8); try { conn.Open(); DataSet ds = new DataSet(); var da = new SQLiteDataAdapter(sql, conn); da.Fill(ds); grid.DataSource = ds.Tables[0].DefaultView; //DataSet wird ins DataGridView übernommen } catch (Exception) { throw; } } } }
Muss ich irgendwie mit System.Text.Encoding arbeiten ? Ich finde im Netz keinen richtigen Ansatz. Daher bitte ich um Hilfe!
Vielen Dank im voraus!
Comment