我正在尝试将文件内容读入任何可读形式。我正在使用 FileInputStream 从文件中读取字节数组,然后尝试将该字节数组转换为字符串。
到目前为止,我已经尝试了 3 种不同的方法:
FileInputStream inputStream = new FileInputStream(file);
byte[] clearTextBytes = new byte[(int) file.length()];
inputStream.read(clearTextBytes);
String s = IOUtils.toString(inputStream); //first way
String str = new String(clearTextBytes, "UTF-8"); //second way
String string = Arrays.toString(clearTextBytes); //third way
String[] byteValue = string.substring(1, string.length() - 1).split(",");
byte[] bytes = new byte[byteValue.length]
for(int i=0, len=bytes.length; i<len; i++){
bytes[i] = Byte.parseByte(byteValue[i].trim());
}
String newStr = new String(bytes);
当我打印出每个字符串时:1) 什么都不打印,2 & 3) 打印出很多奇怪的字符,例如:PK!�Q���[Content_Types].xml �(���MO� @��&��f��]�<code>��pP<*����v������,_��i�I�(zi�N��}f�</code>��h �5)�&��6Sf����c|�"�d��R�d���Eo�r����l�������:0Tɭ�"Э�p'䧘 ��tn��&� q(=X����!.��,�_�WF�L8W......
我会喜欢关于如何正确地将我的字节数组转换为字符串的任何建议。