将希伯来语写入数据库时,文本应该从右到左从左到右书写,因为希伯来语是从右到左书写,我的应用程序正在写“你好”,它应该写“olleh”(当然是希伯来语)。
要将希伯来语读入我的应用程序,我使用 System.Text.Encoding.GetEncoding(1255);
文本在我的应用程序中正确显示,但是当写入数据库时,它是从左到右写入的。我的问题是将文本写入数据库时我错过了什么?
非常感谢乔纳森
Codepage 1255 以逻辑而非视觉顺序对文本进行编码。由于您说它在您的应用程序中正确显示但在您的数据库中显示不正确,因此最可能的解释是数据库工具在您交互查询时不支持双向文本。没关系,因为用户不直接查询数据库。您的应用会执行此操作,然后正确显示双向文本。
尝试使用这种编码 Encoding.UTF8; Encoding.GetEncoding("iso-8859-8");
您的数据库是否设置了从右到左的排序顺序/排序规则?例如,SQL Server 排序顺序 138 = 字典顺序,不区分大小写,用于 1255(希伯来语)字符集。