2010-09-03 15 views
5

Moja aplikacja Android, chciałbym przeczytać plik tekstowy, który jest umieszczony na sdcard. Czytaj plik, aby wyszukać ciąg znaków: "jakiś ciąg" i chciałbyś uzyskać wartość tego ciągu. Czy jest jakiś sposób, że mogę to zrobić w Androidzie.odczytać plik tekstowy i wyszukać ciąg w Androidzie

Proszę podzielić się cennymi sugestiami.

+0

Co masz na myśli mówiąc o wartości tego ciągu? Masz na myśli jej pozycję w pliku lub chcesz mieć plik wartości klucza? – Janusz

+0

Jak przypuszczam w moim pliku mam coś takiego jak: Reshmi; Po prostu chcę wyszukać nazwę w pliku, a następnie pobrać z niej Reshmi. – Remmyabhavan

+0

Jak początkowo, jak mogę wyszukać ciąg w pliku – Remmyabhavan

Odpowiedz

3

Plik file = new Plik (twój plik);

try { 
     FileInputStream in = new FileInputStream(file); 
        int len = 0; 
        byte[] data1 = new byte[1024]; 
      while (-1 != (len = in.read(data1))){ 

           if(new String(data1, 0, len).contains(Your String)) 
            //do something... 
        } 


    } catch (FileNotFoundException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 
+0

Dzięki Umesh. Działa dobrze. Masz pojęcie, jak mogę uzyskać tekst obok niego. – Remmyabhavan

+0

przechowuj dane pochodzące z sieci w łańcuchu, a następnie użyj właściwości indexOf i znajdź indeks swojego łańcucha. StartIndex = index_of_your_string + yourString.length(), następnie użyj podłańcucha i pobierz następny ciąg. – Umesh

+0

Nie przyznano, Umesh. Wyszukujesz wzorzec wewnątrz bufora o rozmiarze 1024 bajtów. Jeśli pożądane słowo zostanie zhakowane przez bufor, nie można go znaleźć. Dla łatwego przykład, pozwala zmniejszyć rozmiar bufora do 10. Szukaj słowo „dyni” na tekst „Lubię to smaczne dyni” No meczu na pierwszym buforze, nie mecz na drugim „s smaczne PU” i brak dopasowania na ostatnim "mpkin". To samo dotyczy większych rozmiarów buforów. – Renascienza

Powiązane problemy