matlab - 在 MATLAB 中读取非 ASCII MS Access 数据库(使用 Gurmukhi (ਗੁਰਮੁਖੀ) 字母表的旁遮普语文本)

标签 matlab ms-access character-encoding non-ascii-characters

我有一个 Microsoft Access 数据库,其中包含使用 Gurmukhi (ਗੁਰਮੁਖੀ) 脚本的旁遮普语列。当我在 MATLAB 中读取数据库时,旁遮普语单词显示为 ??????

如何正确读入数据? 这是代码:

slCharacterEncoding('UTF-8');

setdbprefs('DataReturnFormat', 'cellarray');

setdbprefs('NullNumberRead', 'NaN');

setdbprefs('NullStringRead', 'null');

%Make connection to database. Note that the password has been omitted. 

conn = database('Punjabi', '', '');

%Read data from database. 


curs = exec(conn, ['SELECT DICWEB2.ID'... ' ,   DICWEB2.gur'...

    ' , DICWEB2.Meaning'...
    ' , DICWEB2.Shah'...
    ' , DICWEB2.Type'...
    ' , DICWEB2.sFile'...
    ' FROM  DICWEB2 ']);
curs = fetch(curs);
close(curs);

%Assign data to output variable


Pun1 = curs.Data;

%Close database connection.

close(conn);

%Clear variables

clear curs conn

Here is snap shot of problem

最佳答案

波斯语 语言也有类似的问题。很简单:

  1. 转到控制面板 > 区域 > 管理并更改非 unicode 程序的语言
  2. 选择Beta:使用 Unicode UTF-8 以获得全局语言支持
  3. 在 Matlab 中运行 feature('DefaultCharacterSet', 'UTF-8');

关于matlab - 在 MATLAB 中读取非 ASCII MS Access 数据库(使用 Gurmukhi (ਗੁਰਮੁਖੀ) 字母表的旁遮普语文本),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30061226/

相关文章:

ms-access - 转义不需要的字符,主要是单引号--replace函数及实现

ruby - 这是什么角色? â\u0080\u0099

将二进制转换为多个字符

time-series - 执行 "online"线性插值

matlab - 在 ubuntu 12.04 中找不到 liblapack.so.3

MATLAB - 在列中查找重复值并从该行中提取值

matlab - 在 MATLAB 中对顺时针多边形点进行排序

xml - 如何将带有嵌套节点(父/子关系)的 XML 导入 Access?

c# - 使用 LINQ 和 C# 查询 Microsoft Access MDB 数据库

Emacs:当前缓冲区的编码系统