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

46 ビュー (過去 30 日間)
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!

採用された回答

Bruno Luong
Bruno Luong 2024 年 11 月 12 日 5:32
編集済み: Bruno Luong 2024 年 11 月 12 日 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 件のコメント
国强 关
国强 关 2024 年 11 月 12 日 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.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeText Data Preparation についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by