2014-12-15 12 views
7

Ostatnio odkryłem, że zdjęcia robione za pomocą Google Hangouts dodają czasami: nopm: na końcu nazwy pliku. Na przykład, DCIM/Camera/IMG_20141212_123123: nopm: .jpgObrazy z: nopm: w nazwie pliku

To jest przyczyną mnie mnóstwo spraw analizowania. Jedną z największych jest to, że kiedy utworzyłem obiekt File z tej ścieżki i wypróbowałem file.exists(), otrzymuję FAŁSZ !!!!!

mój koniec celem jest to, że kiedy napotkasz jeden z tych: nopm: obrazy, chciałbym po prostu zmienić jego nazwę na urządzeniu i kontynuować przetwarzanie normalnie.

Oto mój kod:

public static void checkForNopm(File file) { 

    final String path = file.getPath(); 

    if (path.contains(":nopm:")) { 
     final File newfile = new File(file.getPath().replace(":nopm:","")); 
     file.renameTo(newfile); 
    } 
} 
+0

Pamiętam, jak napotykałem podobny problem podczas wysyłania plików .apk do testerów. Jeśli użytkownik pobrał plik .apk więcej niż raz, nazwa zostanie zmieniona z "foo_bar.apk" na "foo_bar.apk (1)", co spowoduje, że android nie rozpozna go jako poprawnego apk do zainstalowania. :/ –

+0

Po co zawracać sobie głowę nopmem po prostu usuń ':' z całej części "odkażania" – Blundell

+1

Nie można tego zrobić @Blundell, aby zmienić nazwę pliku, musi istnieć jak na File.exists, który , zwraca false w przypadku pliku zawierającego dwukropek w nim –

Odpowiedz

0

Jego wyglądają jak 12-godziny zegarowej PM/am. Godzina na zdjęciu to 12:31:23, a: nopm: może oznaczać pm (tak, am) lub jest skonfigurowany w inny typ, na przykład 24-godzinny.

Czy próbowałeś sprawdzić, czy godzina na zdjęciach bez: nopm: jest powyżej 00:00?

+1

Nie sprawdziłem tego, ale nawet jeśli to, co mówisz, jest poprawne, to nie pomoże to niestety ... –

+0

Czas nie ma z tym nic wspólnego. Nazwy plików używają formatu 24-godzinnego. –

1

Przeczytaj to:

https://android.stackexchange.com/questions/98266/why-is-there-nopm-in-some-photo-file-names

No rozwiązanie również. Być może jest to jednak sposób na uniknięcie sytuacji, w której Google Hangout może ominąć zdjęcie z innych narzędzi. Wyszukuję: nopm: kiedy próbowałem skopiować jakieś zdjęcie, które zrobiłem podczas grania w Ingress i udostępnione w Google Hangout. Przyszedłem do twojego pytania, a następnie ta odpowiedź w Androidzie wymieniona na sekundę. Uważam, że odpowiedź "Brak Photo Managera" jest bardziej uzasadniona niż "AM/PM".

Jeśli tak jest naprawdę, najlepszą metodą będzie ręczne usunięcie tych ": nopm:", zanim będzie można nimi zarządzać za pomocą narzędzi. W tym samym czasie inne narzędzia, takie jak "Dropbox", mogą również tworzyć kopie zapasowe tych zdjęć.

+0

Dzięki. Faktycznie widziałem ten post wcześniej. Jak wspomniałeś, nie zapewnia niestety korzystnego wglądu w żadne potencjalne rozwiązanie. –