2010-09-03 18 views
5

Ben android uygulama, sdcard yerleştirilir bir metin dosyasını okumak istiyorum. Bir dize aramak için dosyayı okuyun: "bazı dize" ve bu dizgenin değerini almak istiyorum. Android'de bunu yapabileceğim herhangi bir yolu var mı.Bir metin dosyası okuyun ve android bir dizide arama

Lütfen değerli önerilerinizi paylaşın.

+0

Bu dizgenin değeriyle ne demek istiyorsunuz? Dosyadaki konumunu mı kastediyorsunuz yoksa anahtar bir değer dosyanız mı var? – Janusz

+0

Dosyamda varsayalım gibi bir şeye benzemiyorum İsim: Reshmi; Sadece dosyada isimde arama yapmak ve ondan Reshmi'yi almak istiyorum. – Remmyabhavan

+0

Başlangıçta nasıl – Remmyabhavan

cevap

3

Dosya dosyası = yeni Dosya (dosyanız);

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

dosyada bir dize için arama yapabilirim Umesh.Its çalışıyor teşekkürler.Sonraki metni nasıl alabilirim gibi herhangi bir fikriniz var. – Remmyabhavan

+0

Web'den gelen verileri bir dizede saklayın, ardından indexOf özelliğini kullanın ve dizininizin dizinini bulun. startIndex = index_of_your_string + yourString.length(), sonra alt dizeyi kullanın ve sonraki dizeyi alın. – Umesh

+0

Kabul edilmedi, Umesh. 1024 baytlık bir tamponun içinde bir desen arıyorsunuz. İstenen kelime tampon ile saldırıya uğradıysa, asla bulunamadı. Kolay Örneğin , ilk tampon üzerinde Hiçbir maç, ikinci "ın lezzetli pu" konulu eşleşme "i bu lezzetli kabak gibi" metin üzerinde kelime "balkabağı" Ara 10 için tampon boyutunu azaltmak sağlar ve son "mpkin" ile eşleşme yok. Daha büyük arabellek boyutlarıyla aynı. – Renascienza

İlgili konular