所以我在 Matlab 中工作,并且在尝试理解字符串在 Matlab 中如何工作时遇到了一个真正的问题。
基本上我正在尝试将字符串加载到其二进制版本的双精度数组中。
所以基本上我想加载“a”并获取 [0 1 1 0 0 0 0 1] 。
下面的内容将字符串转换为其二进制表示形式,但这只会导致我在将其转换为数组时具有 "a" = ["01100001"] ,而在使用 str2num 转换为数字时具有 [1100001]
function loadString(obj, string)
binaryString = reshape(dec2bin(string, 8), 1, []);
end
所以基本上我正在寻找一种将字符串转换为字符数组的方法,即“aaa”-> [“a”“a”“a”]。这样,我将 binaryString 转换为 ["0" "1" "1" "0" "0" "0" "0" "1"],然后使用 str2num 转换该数组。
这是您要找的吗:
z = dec2bin('abc',8)'
z1 = z(:)'
z2 = arrayfun(@str2double, z1)
z1 =
011000010110001001100011
z2 =
0 1 1 0 0 0 0 1 0 1 1 0 0 0 1 0 0 1 1 0 0 0 1 1
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)