matlab中ASCII碼轉化為字元(中文)

2021-07-01 01:47:23 字數 901 閱讀 8919

1樓:匿名使用者

這個是因為你對漢字的編碼不瞭解引起的。

對於gb2312的字元(就是我們平時所說的區位),一個漢字對應於兩個位元組。

每個位元組都是大於a0(十六進位制),

倘若,你的第一個位元組大於a0,而你的第二個位元組小於a0,那麼它應當不是漢字(僅僅對於gb2312),不知道你能否理解我說的。

如果真的發生這種情況(你的第一個位元組大於a0,而你的第二個位元組小於a0),那麼系統找不到一個漢字與它對應,極有可能顯示是兩個字元(ascii),第一個是就如你上面的?,第二個字元可能就是正常的ascii碼。

對於現在的gbk編碼是要求漢字每個位元組都超過80(十六進位制,對應於十進位制的128),當然有一些碼是沒有漢字對應的。

現在還有big5碼、萬國碼,現在的漢字編碼也複雜了。

哎。瞭解就行。

2樓:匿名使用者

使用char強制將一個十進位制數轉化為字元的時候,超過128的數都會顯示「?」

既然是十進位制數,怎麼會超過128呢?

3樓:匿名使用者

用abs() setstr() 兩個函式

如:abs(a)=32

setstr('32'=a)

應該懂了吧

matlab中怎樣把ascii碼轉換成字串

4樓:我不能變胖

如果是字元的話 直接int16(a)就能轉換 如果是數字 先num2str 再用int16轉

5樓:都希許夜蓉

用char函式

如:a=[97

9899]

b=char(a)

------執行結果:a=

979899b

=abc

matlab中怎麼把libsvm資料轉化成matlab格式

label vector,instance matrix libsvmread data.txt 用這個函式 data.txt是你的資料文字,label vector是類別號,instance matrix是屬性矩陣 matlab中怎麼把libsvm資料轉化成matlab格式 matlab中怎麼把l...

ascii碼值是多少?

a z 97 122,a z 65 90,0 9 48 57。ascii 碼使用指定的7位或8位二進位制陣列合來表示128 或256種可能的字元。標準ascii 碼也叫基礎ascii碼,使用7位二進位制數來表示所有的大寫和小寫字母,數字0 到9 標點符號,以及在美式英語中使用的特殊控制字元。1 0 ...

java中,如何把ascii碼轉換成字元

如果是單個字元的話,直接轉換就可以 int d 97 char e char d 如果是一串內ascii碼的話,最好存在 容byte中 byte b system.out.println new string b char a a 97 system.out.println a 在java中如何將字...