数字char转成数字byte

niu2006 2009-04-13 11:11:30

char [] dataChar = {'1','2'};
使用C#语言,如何把上面的char数组转换成一个
byte[] dataByte = {'1','2'};
...全文
441 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
khler 2010-03-09
  • 打赏
  • 举报
回复

byte.Pase("936");

睡神在睡觉 2009-04-14
  • 打赏
  • 举报
回复
1喽是强制类型转换,2喽是数组复制,3喽总结性发言......

对于数字和字母和符号用1楼的方法就可以直接转换成byte了,但是如果是汉字似乎就不可以了,在C#中一个汉字也占一个字符的长度,是双字节字符,用一个byte位是存不下的,会异常抛出~

针对汉字可以用ASCII存储~
zgke 2009-04-14
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 niu2006 的回复:]
谢谢楼上几位的回复,问题已经解决了。
代码如下:
for(int i= 0 ;i <dataChar.Length; i++)
{
dataByte[i] = (byte)(dataChar[i]-48);
}
[/Quote]

.NET 里 你的方法可能会丢失数据

char a ='中';
这里的a =byte[2];的..

niu2006 2009-04-14
  • 打赏
  • 举报
回复
谢谢楼上几位的回复,问题已经解决了。
代码如下:
for(int i= 0 ;i <dataChar.Length; i++)
{
dataByte[i] = (byte)(dataChar[i]-48);
}

guoyong1986 2009-04-14
  • 打赏
  • 举报
回复
这可是显式转换了,数据会有损了。
给你思路:
1 取出char数组元素,判断可不可以转换成byte类型。哪 'A' 这个数据就不符合楼主的要求了吧。
2 char强转成byte类型,赋值到byte数组中.

楼上两位代码已贴出。收贴。
gisyellow 2009-04-13
  • 打赏
  • 举报
回复
Array.Copy(dataChar,dataByte,dataChar.GetLength(0));
cja03 2009-04-13
  • 打赏
  • 举报
回复
怎么标题是数,内容又是字符?

char[] dataChar = { '1', '2', '3', '4' };
byte[] dataByte = new byte[dataChar.Length];
for (int i = 0; i < dataChar.Length; i++)
dataByte[i] = (byte)dataChar[i];


char[] dataChar = { '1', '2', '3', '4' };
byte[] dataByte = new byte[dataChar.Length];
for (int i = 0; i < dataChar.Length; i++)
dataByte[i] = byte.Parse(dataChar[i].ToString());

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧