将两个String与android进行比较

时间:2015-05-28 21:21:32

标签: android

这是我在原始文件夹中读取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?

1 个答案:

答案 0 :(得分:0)

如果raw文件夹中的文件是不同的编码,则可能无法从equals()获得true。

你需要注意byteArrayOutputStream.toString(),试试

  

byteArrayOutputStream.toString(" ISO-8859-1")

  

byteArrayOutputStream.toString(" UTF-8&#34)

此外,您的代码是

 partsViewModel.getImageAddress().trim()

你还应该确保它是否真的来自你的readTextFile代码。