Come si crea un oggetto String da un array di byteCome si converte un array di byte con carattere di terminazione null in una stringa in Java?
byte arr[MAX_SIZE]; // Java
cui uno degli elementi di matrice è una terminazione byte C nullo? E 'semplice come chiamare
String str = new String(arr);
Sarà il costruttore String sapere di fermarsi automaticamente al carattere di terminazione nulla? Qualsiasi byte dopo il byte null sono (possibilmente) caratteri garbage che non voglio includere nella stringa. L'ultima risposta sotto Parsing byte array containg fields of unknown length suggerisce di eseguire il ciclo attraverso la matrice e di trovare manualmente il carattere di terminazione null, ma mi chiedevo se il costruttore String lo farà automaticamente. Presumo anche che il set di caratteri predefinito del sistema verrà utilizzato su tutte le estremità.
Il char NULL non è necessariamente verso la fine della matrice; può essere in qualsiasi posizione. – Phillip
@BenS no, arr.length - 1 – sjr
@Phillip, ho capito questo dopo aver letto di nuovo la tua domanda .. ha modificato la mia risposta – sjr