Why is it that special characters are not being recognized correctly in my standalone app?

6 views (last 30 days)
"Why is it that special characters are not being recognized correctly in my script?
For instance,
msgbox("Time μs");
when I run the script file with this command, a message box displays "Time μs" as expected.
However, when I create a standalone EXE of the script created using deploytool in Matlab 2023a, the message box displays 'Time □s' instead. (symbol μ became empty square)
This was not an issue in Matlab 2019, and it's causing my code to fail. I use column names like "Time μs" to identify columns in a table.

Answers (1)

Bruno Luong
Bruno Luong on 14 Sep 2023
Edited: Bruno Luong on 14 Sep 2023
It looks like it related to mfile encoding. Through the compiler; the mfiles are encrypted and decrypted and run. May be one the the chain element do not consider correctly the enconding. The most workaround is to replace in the code 'µ' by char(181) or string(char(181)).
  3 Comments
Bruno Luong
Bruno Luong on 15 Sep 2023
There is a default behavior change of source file encoding in R2020a IIRC (default UTF8). You may be affected by this specific change.
Vyshakh Pv
Vyshakh Pv on 15 Sep 2023
I appreciate your response. However, I'm disappointed that I chose Matlab for my implementation, especially considering its already limited backward compatibility. Furthermore, their tendency to make such changes only adds to the frustration.
(readtable method has been updated, which also broke my code)

Sign in to comment.

Categories

Find more on Programming Utilities in Help Center and File Exchange

Products


Release

R2023a

Community Treasure Hunt

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

Start Hunting!