簡體   English   中英

Java字符串比較失敗

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM