2010-09-03 45 views
5

Tôi ứng dụng android của tôi, tôi muốn đọc một tập tin văn bản được đặt trên sdcard. Đọc tệp để tìm chuỗi: "một số chuỗi" và muốn nhận giá trị cho chuỗi đó. Có cách nào để tôi có thể làm điều đó trong Android không.đọc một tập tin văn bản và tìm kiếm một chuỗi trong android

Vui lòng chia sẻ các đề xuất có giá trị của bạn.

+0

Bạn có ý nghĩa gì với giá trị cho chuỗi đó? Bạn có nghĩa là vị trí của nó trong tập tin hoặc bạn muốn có một tập tin giá trị quan trọng? – Janusz

+0

Giống như giả sử trong tập tin của tôi tôi có một cái gì đó như Tên: Reshmi; Tôi chỉ muốn tìm kiếm tên trong tệp và sau đó nhận được Reshmi từ nó. – Remmyabhavan

+0

Như ban đầu tôi có thể tìm kiếm một chuỗi trong tệp – Remmyabhavan

Trả lời

3

Tệp tệp = tệp mới (tệp của bạn);

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

Cảm ơn Umesh.Its làm việc tốt. Bạn có ý tưởng nào giống như cách tôi có thể lấy văn bản bên cạnh nó không. – Remmyabhavan

+0

lưu trữ dữ liệu đến từ web trong chuỗi sau đó sử dụng thuộc tính indexOf và tìm hiểu chỉ mục chuỗi của bạn. startIndex = index_of_your_string + yourString.length(), rồi sử dụng chuỗi con và truy xuất chuỗi tiếp theo. – Umesh

+0

Không được cấp, Umesh. Bạn đang tìm kiếm một mẫu bên trong bộ đệm 1024 byte. Nếu từ mong muốn bị tấn công bởi bộ đệm, có thể không bao giờ được tìm thấy. Để có ví dụ dễ dàng, hãy giảm kích thước bộ đệm xuống 10. Tìm từ "bí ngô" trên văn bản "tôi thích bí ngô ngon này" Không khớp với bộ đệm đầu tiên, không khớp với "pu ngon" thứ hai và không phù hợp với "mpkin" cuối cùng. Cùng kích thước bộ đệm lớn hơn. – Renascienza

Các vấn đề liên quan