Supposons que je viens d'utiliser un BufferedInputStream
pour lire les octets d'un fichier texte encodé UTF-8 dans un tableau d'octets. Je sais que je peux utiliser la routine suivante pour convertir les octets en chaîne, mais y a-t-il un moyen plus efficace / plus intelligent de faire cela que de simplement parcourir les octets et de convertir chacun?
public String openFileToString(byte[] _bytes)
{
String file_string = "";
for(int i = 0; i < _bytes.length; i++)
{
file_string += (char)_bytes[i];
}
return file_string;
}
byte[]
en mémoire et de le convertir via new String(_bytes,"UTF-8")
(ou même par morceaux avec +=
sur la chaîne) est le plus efficace. Le chaînage des flux d'entrée et des lecteurs peut fonctionner mieux, en particulier sur les fichiers volumineux.
String fileString = new String(_bytes,"UTF-8");
?