Discussion:
[問題] 請問如何轉BYTE[]
(时间太久无法回复)
c***@ptt.cc
2007-05-26 15:44:51 UTC
Permalink
比如說我有一個 char[1024]的資料

我要怎麼把char 陣列的資料轉成 byte[1024]呢


可以有人幫我解惑一下嗎?

感謝大家~~


--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.126.198.69
ha(ruhi|yate)ism
2007-05-26 17:41:13 UTC
Permalink
※ 引述《chiunyao ()》之銘言:
: 比如說我有一個 char[1024]的資料
: 我要怎麼把char 陣列的資料轉成 byte[1024]呢
: 可以有人幫我解惑一下嗎?
: 感謝大家~~
話說兩個大小不一樣喔...

char是2位元組 byte是1位元組

不過如果你的char都是在255以內的 那就拿個for一個一個cast過去就好了

--
"LPH" is for "Let Program Heal us"....

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 192.192.197.116
女生都怕生小孩
2007-05-27 17:08:29 UTC
Permalink
※ 引述《LPH66 (ha(ruhi|yate)ism)》之銘言:
: ※ 引述《chiunyao ()》之銘言:
: : 比如說我有一個 char[1024]的資料
: : 我要怎麼把char 陣列的資料轉成 byte[1024]呢
: : 可以有人幫我解惑一下嗎?
: : 感謝大家~~
: 話說兩個大小不一樣喔...
: char是2位元組 byte是1位元組
: 不過如果你的char都是在255以內的 那就拿個for一個一個cast過去就好了

那有沒有辦法…

讓char[1024] 空間被二個指標指

別分是原本的char* 和byte*

這樣就可以很簡單的控制char裡的ASCII、然後再印出



不想作一次for 就有O(n)的懶人我

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.62.44.195
ha(ruhi|yate)ism
2007-05-27 22:35:50 UTC
Permalink
�� �ޭz�mSCSonic (�k�ͳ��ȥͤp��)�n���ʨ��G
: �� �ޭz�mLPH66 (ha(ruhi|yate)ism)�n���ʨ��G
: : �ܻ����Ӥj�p���@�˳�...
: : char�O2�줸�� byte�O1�줸��
: : ���L�p�G�A��char���O�b255�H���� ���N����for�@�Ӥ@��cast�L�h�N�n�F
: �����S�����k�K
: ��char[1024] �Ŷ��Q�G�ӫ��Ы�
: �O��O�쥻��char* �Mbyte*
: �o�˴N�i�H��²�檺����char�̪�ASCII�B�M���A�L�X
: ���Q�@�@��for �N��O(n)���i�H��
�A�|�gchar *���ܧA�٨S�qC/C++���X��

Java�̰}�C�N�O�}�C �S������ �u���Ѧ�

�ӳo�ӰѦҤ]�O���®��ӫ������� ���O���Ӱ�bit hack��

�ҥH�A�٬O�ĨĪ���for�@�ӭ�assign�L�h�a

--
�ӤHı�o�S���n���o�ؤp�F�誺O(n)�O�� (�b�{�]�̴X�Q�U�ӪF�賣����...)

�p�B�N���u�������\�F char�Mbyte�����N�O���@�ˤj

���L�h���X�Ӫ��ȷ|�äC�K�V... (����C���L�N�|���D)
--
Java�n��bit hack�����L�@�M���禡�Ӱ�...
--
 �� ��_�c�d�e�c_��. ���@�@�@�@�@ �@�@�@�@�f�f�@�f�f�@�d�����@�@ �i�e�e�e�e�e 
�l./��_�c�d�e�c_�� \'�o �@�@�֢Ϣ����֢� �i�i�i�i�i�@�ա��} �@ �e�e�e�e�e�e�e 
�k�� �������i�����i�G   �@�@�ע��ۡ@ �@�@By-gamejye�@�F|\ �@�@�m�m�m�m�m�e�m�m
�j�a(�j�����������o)�Z �j�@�@ �@�@�@ �@�@�@�@�i�@�@�@ ���G �@�@�e�e�e �e�e�e�e
�i/|�o �� �B ���n |\ �k�@�@�@�@�@ �@ �@�����ΥD�q�@�@�@ �@�@�i�e�e�e�i�e�e 
����|�� ���� ��/'����S.O.S �@���y�j���R���q�W���r�F�h�U�D�c�������U�o�@�@�@ 

--
�� �o�H��: ���������~�{(ptt.cc)
�� From: 192.192.197.115
�� �s��: LPH66 �Ӧ�: 192.192.197.115 (05/28 06:37)
O      O
2007-05-28 08:35:10 UTC
Permalink
※ 引述《chiunyao ()》之銘言:
: 比如說我有一個 char[1024]的資料
: 我要怎麼把char 陣列的資料轉成 byte[1024]呢

char[] cs = new char[1024];

.
.
.

byte[] bs = new String(cs).getBytes();

--
我沒試過XD

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.192.186.196
※ 編輯: turncc 來自: 210.192.186.196 (05/28 16:34)
ha(ruhi|yate)ism
2007-05-28 10:38:20 UTC
Permalink
※ 引述《turncc (O      O)》之銘言:
: ※ 引述《chiunyao ()》之銘言:
: : 比如說我有一個 char[1024]的資料
: : 我要怎麼把char 陣列的資料轉成 byte[1024]呢
: char[] cs = new char[1024];
: .
: .
: .
: byte[] bs = new String(cs).getBytes();
唔...原來有這招可以用 XD

我剛剛試的結果是它會把字串轉成local字碼

不知道是不是原PO要的

(java內部是用unicode表示字元的 所以一個char才會是2個位元組)

只不過這樣轉出來的byte[]長度就不一定是1024了~

--
"LPH" is for "Let Program Heal us"....

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.70.172.164

继续阅读narkive:
Loading...