根据客户端操作系统,使用数据集读取值会混淆特定的语言字符

本文关键字:字符 语言 读取 操作系统 客户端 数据集 | 更新日期: 2023-09-27 18:06:28

我使用c#创建了一个windows应用程序,该应用程序使用OleDBConnection从Dbase数据库文件中创建数据集。

我的问题是这在我自己的计算机(瑞典)上运行得很好,但当我在我的服务器(英语)上运行时,瑞典字母(,ä,ö,Å,Ä,Ö)变得混乱。

我试过了,没有运气:

System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("sv-SE");
System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("sv-SE");

根据客户端操作系统,使用数据集读取值会混淆特定的语言字符

我自己修复了它,不是最好的方法,但它对我来说是有效的。

因为我将在英语操作系统计算机上运行,所以我做了一个函数,将所有奇怪的字符更改为瑞典字符。

public string changeSpecialCharacters(string kund)
{
    StringBuilder b = new StringBuilder(kund);
    b = b.Replace("σ", "å");
    b = b.Replace("┼", "Å");
    b = b.Replace("Σ", "ä");
    b = b.Replace("─", "Ä");
    b = b.Replace("÷", "ö");
    b = b.Replace("╓", "Ö");
    return b.ToString();
}

在我找到一个不同的方法之前,我会坚持下去。