Unreadable UTF characters when they are loaded in MATLAB R2022b, but they could be readable in R2020b

46 visualizaciones (últimos 30 días)
The table data are Chinese characters and saved in MAT-file by using MATLAB R2020b as attachment. In R2022b, MATLAB can load the table variable (db_Indicators), but the non-ASCII part of data in the table are unreadable.
Unzipped the attachment, and then running In MATLAB R2022b as following
load('database.mat','db_Indicators')
double(db_Indicators.UniNum{1})
It produces as
ans =
65533 49 46 49
In MATLAB R2020b, however,
It could be correctly displayed as
ans =
8470 49 46 49
Please help to correct the problem. Greatly thanks!

Respuesta aceptada

Bruno Luong
Bruno Luong el 12 de Nov. de 2024 a las 5:32
Editada: Bruno Luong el 12 de Nov. de 2024 a las 6:34
It sounds like it related to the bug fix they carried out in 2021b, see @Stefanie Schwarz answer here; This breaks the encioding/decofing compatibility before and after this release.
  1 comentario
国强 关
国强 关 el 12 de Nov. de 2024 a las 9:48
Thanks. The clues here hint of the goodness in coding behaviour. I previously drag the variable (db_Indicators) in the workspace window and drop it into the MAT-file. It seems the bad habit to make the data unreadable and being lost by loading in the updated MATLAB R2022b. If using the save command as
save('database.mat','db_Indicators','-append')
the MAT-file would be free of the messy data in later MATLAB.
Maybe, MATHWORK should give some warning of data vulnerability when users save the non-ASCII data in MAT-file by dragging & dropping.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Text Data Preparation en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by