2016-09-06 54 views
0

我會用XBee發送Java Map,但是我在Git存儲庫中看到它們如何發送byte []。我怎樣才能發送我的地圖? 我覺得爲此使用Python,但我更喜歡對所有人使用Java,除非發送消息,否則不要使用Java。發送Java Map <Integer,String>與XBee

這是我的代碼:

public class Comunicacion { 
    /* Constants */ 
    private static final String PORT = "ttyUSB0"; 
    private static final int BAUD_RATE = 9600; 

    private static Map<Integer, String> dataToSend = new HashMap<Integer, String>(); 

public static void main(String[] args) { 
    XBeeDevice myDevice = new XBeeDevice(PORT, BAUD_RATE); 
    byte[] dataInByte = dataToSend.getBytes(); 

    try { 
     myDevice.open(); 

     System.out.format("Sending broadcast data: '%s'", new String(dataInByte)); 

     myDevice.sendBroadcastData(dataInByte); 

     System.out.println(" >> Success"); 

    } catch (XBeeException e) { 
     System.out.println(" >> Error"); 
     e.printStackTrace(); 
     System.exit(1); 
    } finally { 
     myDevice.close(); 
    } 
} 

回答

0

只爲幾乎任何一個二進制字符串... 但是我不確定你什麼也發送該信息和所需的頭轉換的一個例子。無論如何,這可能會得到你想要的,一個轉換後的二進制值。

public class JavaApplication10 { 
    static HashMap<String, Boolean> map = new HashMap<>(); 


    public static void main(String[] args){ 

     byte[] dataInByte = map.toString().getBytes(); 
     String sender =""; 
     for (byte b : dataInByte) { 
      sender = sender + (Integer.toBinaryString(b)); 
     } 
     System.out.println(sender); 
    } 
} 
相關問題