我需要將終止符放置到我的字符串中。終結者可能是字節11(或0x0B)或將來可能是任何其他人。向我的字符串添加字節的最佳方法是什麼?創建字符串二進制終止符
我想這樣做:
String s = "122456"+char(11);
我需要將終止符放置到我的字符串中。終結者可能是字節11(或0x0B)或將來可能是任何其他人。向我的字符串添加字節的最佳方法是什麼?創建字符串二進制終止符
我想這樣做:
String s = "122456"+char(11);
在Java中,你應該使用一個常數這一點。嘗試
public final static char TERMINATOR = 0x0B;
然後,您可以在代碼中使用這樣的:
"122456" + TERMINATOR
這使得代碼可讀性,這也使得它簡單的用不同的符號來代替終止(而不是在你的情況但通常)或找到符號被使用的所有地方。
如果您需要的終止是可變的,使用領域和存取方法:
private char terminator = 0x0b;
public void setTerminator(char terminator) { this.terminator = terminator; }
public char getTerminator() { return terminator; }
這允許您更改終止。
我也建議爲每個計劃發送的消息創建一個Java類型。該類型應知道如何創建字節數組,然後可以使用「IO服務」傳輸字節數組。因此,創建存取方法的消息的每個部分,然後單encode()
方法:
public byte[] encode() {
String message = data1 + terminator + data2 + terminator + ...
return message.getBytes("ISO-88591-1");
}
這樣的話,你可以建立一個腳印的消息步驟,然後將其轉換成字節流一旦其完成發送。
爲什麼你需要放置一個終止符到字符串?這感覺就像[xy-problem](http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem) – ddmps 2013-04-08 11:28:50
Java'String'中的終止符需要什麼? – kaysush 2013-04-08 11:30:14
我需要將此字符串發送到com端口。協議需要特定的終止符(和字段分隔符)。 – vico 2013-04-08 11:33:42