[英]Java string comparison fails
幾個小時以來,我一直在尋找代碼錯誤,但我根本找不到它。 我可以發現錯誤出在我的代碼的這一部分:
public String getType(File file)
{
String type = null;
try
{
type = URLConnection.guessContentTypeFromName(file.getAbsolutePath());
if (type.startsWith("image"))
{
Log.d(logTag, file.getAbsolutePath());
}
}
catch (Exception e){}
return type;
}
這絕對好用,但是當我直接在return語句之前進行字符串比較時,我沒有得到所有以“ image”開頭的類型。
當我不使用異常處理塊時,也會發生同樣的事情。
我還顯示了字符串的整數值,它們的值相等。
如果有關系:這是一個Android項目。
編輯:例如我得到
/storage/emulated/0/WhatsApp/Media/WhatsApp Images/IMG-20150906-WA0000.jpg
在兩種情況下我都收到
/storage/emulated/0/Profilbilder/18186367897.jpg
僅當我使用上面的代碼時。 並且不會為此文件引發異常。
編輯:我創建了一個新項目,它現在可以按預期工作。 由於我的新代碼不是完全相同,而是幾乎完全相同,因此我無法確定這是邏輯錯誤還是編譯器
當文件為null或URLConnection引發某些異常時,類型必須為null,然后type.startsWith(“ image”)上存在nullpointerException
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.