这是我在原始文件夹中读取txt文件的方法:
public static String readTextFile(Activity activity,int rawId){
InputStream inputStream = activity.getResources().openRawResource(rawId);
System.out.println(inputStream);
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
int i;
try {
i = inputStream.read();
while (i != -1)
{
byteArrayOutputStream.write(i);
i = inputStream.read();
}
inputStream.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return byteArrayOutputStream.toString();
}
我的平等代码:
String read_text= partsViewModel.getImageAddress().trim();// read_text is dc18b7f823e94dcb85a5f38845300324
if (read_text.equals("dc18b7f823e94dcb85a5f38845300324")) {
// equal
} else {
// not equal
}
为什么read_text不等于dc18b7f823e94dcb85a5f38845300324?
答案 0 :(得分:0)
如果raw文件夹中的文件是不同的编码,则可能无法从equals()获得true。
你需要注意byteArrayOutputStream.toString(),试试
byteArrayOutputStream.toString(" ISO-8859-1")
或
byteArrayOutputStream.toString(" UTF-8&#34)
此外,您的代码是
partsViewModel.getImageAddress().trim()
你还应该确保它是否真的来自你的readTextFile代码。