我正在尝试从txt文件中读取字符串数据,其中包含特殊的土耳其语字符。
我想将内容存储在字符串中。我尝试了一些方法,如textscan
,fileread
,但是,有一些特殊的土耳其字符,如ş,ç,ı,ö,ğ,有一些奇怪的符号。有没有办法做到这一点?
答案 0 :(得分:1)
我创建了一个名为turkish.txt的文件,其中包含您提到的字符(ş,ç,ı,ö,ğ)。试着阅读它给了我以下内容:
fid = fopen('turkish.txt','r','n','UTF-8');
str=fread(fid);
native2unicode(str')
ans =
ÿþ_, ç , 1, ö ,
如你所见,ş,ı,ğ未正确呈现。如果您输入
help slCharacterEncoding
您可以通过平台查看最常支持的编码列表。我玩了一些编码,我检查过的是:
最后一个与日文字符有关。它们包含一些土耳其字符,这些字符被正确呈现,如ç和ö,但不是全部。
如果你浏览docs它说:
如果要使用其他字符编码,则需要使用适用于您的操作系统的区域设置启动MATLAB。请参阅操作系统手册以更改区域设置。
可以在here找到我在Windows平台上设置区域设置的说明{{3}}。
希望它有所帮助。