none
解碼有時對有時錯 RRS feed

  • 問題

  • 下面是我寫的編碼解碼程式  我的接收資料是7bit 可是當我執行時,發現解出來有時對有時錯

    例如: 

               FF-FF-01-03-3C-95-05   >>>這樣是解對的

               FF-FF-01-03-05    >>這樣式有兩個沒有解到

               001-04-0040-098>>>完全顯是錯的

             會有這三種現象出現             不知道是哪裡沒有寫好,我有參考指令的解說來寫

     

     System.Text.Encoding encoding = System.Text.Encoding.UTF7;

                byte[] myData = new byte[InputData];

                port.Read(myData, 0, InputData);

                for (int i = 0; i < InputData; i++)

                {

                    myData[i] = (byte)port.ReadByte();    

                }

                string str = BitConverter.ToString(myData);

                str = BitConverter.ToString(myData).Replace(" ", "-");

                SetText(str);


    2010年5月25日 上午 07:30

解答

  • int dataLength = port.Read(myData, 0, InputData)

    for (int i = 0; i < dataLength; i++)

    線上手冊要看仔細。


    論壇是網友平等互助 保證解答請至 微軟技術支援服務
    提問時,錯誤情境描述與錯誤訊息很重要,情境描述包含你做了什麼,預期的結果與實際發生的結果。一個最爛的問法範例:「我的電腦電腦怎麼不能開機?」誰知道你家是不是沒電還是你根本找不到電源鈕。
    • 已標示為解答 Lolota Lee 2010年6月1日 上午 08:08
    2010年5月25日 下午 03:51

所有回覆

  •             int InputData = port.BytesToRead;
                byte[] myData = new byte[InputData];
                port.Read(myData, 0, InputData);
                string str = BitConverter.ToString(myData);

    BitConverter.ToString 方法 (Byte[])
    2010年5月25日 上午 07:59
  • int dataLength = port.Read(myData, 0, InputData)

    for (int i = 0; i < dataLength; i++)

    線上手冊要看仔細。


    論壇是網友平等互助 保證解答請至 微軟技術支援服務
    提問時,錯誤情境描述與錯誤訊息很重要,情境描述包含你做了什麼,預期的結果與實際發生的結果。一個最爛的問法範例:「我的電腦電腦怎麼不能開機?」誰知道你家是不是沒電還是你根本找不到電源鈕。
    • 已標示為解答 Lolota Lee 2010年6月1日 上午 08:08
    2010年5月25日 下午 03:51