Change MATLAB character set encoding

69 visualizzazioni (ultimi 30 giorni)
Carats
Carats il 30 Ott 2019
Hello! Please help with the problem. I must process the text files created by the command line. Command line creates the file in the character set IBM866. I think Matlab understands Cyrillic in cp1251. Is it possible to somehow convert the information read from the files to cp1251 or to make the program work with the encoding IBM866?
slCharacterEncoding ('IBM866') does not help. It only changes the encoding in the console. For example, if I use the contains(stroka_iz_faila_v_ibm866,'russiantext') in my program, it does not find Russian letters in the string. But if I stop the execution of the program and write it in the console contains(stroka_iz_faila_v_ibm866, 'russiantext'), it will find the text in the string (provided I use slCharacterEncoding ('IBM866')).
Similarly, the strfind () function does not work.

Risposte (3)

Sulaymon Eshkabilov
Sulaymon Eshkabilov il 30 Ott 2019
Hi,
Maybe this one helps with your problem: feature('DefaultCharacterSet','UTF-8');
Good luck

Carats
Carats il 31 Ott 2019
feature('DefaultCharacterSet','UTF-8') = slCharacterEncoding ('IBM866')
so its cant help me
its help but only if use commands in console

MathWorks Support Team
MathWorks Support Team il 19 Feb 2021
Specify encoding as the fourth input argument to fopen.
For example:
fopen(filename, 'r', 'n', 'IBM866')

Categorie

Scopri di più su Workspace Variables and MAT-Files in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by