How to convert char to number?
5 次查看(过去 30 天)
显示 更早的评论
I have a data set that I am trying to format as follows:
month = data (:, 2); % (2276x1)
month =sprintf('%02d\n',month)
The problem is this gives me:
Name Size Bytes Class
month 1x6828 13656 char
I need it to be a single column of NUMBER data (2276x1) in the format I specified. I tried using str2num but this makes my data lose the formatting I want.
Please help and thank you!
5 个评论
Azzi Abdelmalek
2016-6-10
When you write:
a=05
This number will be displayed as 5. The only way to display it with padded 0 is to use a string.
sprintf('%02d',5)
Image Analyst
2016-6-10
Don't use month as a variable name because it's a built-in function. What does data represent, and especially column 2 of data? Why is month 2276 characters long? The month names I know of are less than 10 characters, like September.
采纳的回答
Azzi Abdelmalek
2016-6-10
编辑:Azzi Abdelmalek
2016-6-10
B=sprintf('%02d\n',A)
sprintf is used to display your data A in a format of your choice, your data are converted to string B. Your data are still in your original array A. Why do you want to convert B ?
For example, if you have a number 5, if you want to display it as 05 you need to convert it to a string '05'.
4 个评论
Azzi Abdelmalek
2016-6-10
If you want to save your data as double, just save your original array. nobody will see it!
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Type Conversion 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!