<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<head><meta forua="true" http-equiv="Cache-Control" content="max-age=0" /></head>
<card title="C# byte word 变量负值的ToString转换" id="card1">
<p> 游客</p><p>
标题:C# byte word 变量负值的ToString转换<br/>
正文:<br/>
最近抽空写个C#应用FOCAS1函数的FANUC 18M通过TCP/IP读取机床参数的功能，结果发现读到的负值用简单的 byte.ToString()和word.ToString()方法得不到正确的负值，经过多次改写代码和测试，实现byte word 变量负值的ToString准确转换的代码如下：if (paramater_type == 1) //byte{    if (sign == 1) //变量符号标志1为无符号数据    {        mystring = ((ushort)byte).ToString();    }    else    {        mystring = ((byte &amp;amp; 128) != 0) ? (byte - 255 - 1) : byte.ToString();    }}else if (paramater_type == 2) //word{    if (sign == 1) //变量符号标志1为无符号数据    {        mystring = ((UInt16)word).ToString();    }    else    {        mystring = (word &amp;amp; 0x8000) != 0) ? word : word.ToString();    }}word的负数可以直接赋值到mystring，byte就得自己先转换一下。<br/><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=296&amp;Page=1">[&lt;&lt;]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=296&amp;Page=1">[[1]]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=296&amp;Page=1">[&gt;&gt;]</a><br/>
<br/>
<a href="wap.asp?act=Com&amp;id=296">查看评论(0)</a><br/>
<a href="wap.asp?act=AddCom&amp;inpId=296">发表评论</a><br/><br/>

<br/>

<br/>
<a href="http://camnpr.com/wap.asp">首页</a>
</p>
</card>
</wml>