2014-07-20 2 views
0

text.txt와 같은 파일에서 특정 줄을 읽은 다음 일부 줄을 쓰려고합니다. 어떤 방법으로 안드로이드에서 그것을 할 수 있습니까? 나는 여전히 LineNumberReader로 놀고 있지만 여전히 캔트는 그렇게 할 방법을 찾는다.android에서 텍스트 파일의 특정 줄 쓰기 및 읽기

감사합니다.

답변

0

inputstream, bufferedreader, stringbuilder 및 outputstream의 조합을 사용하지 않는 이유는 무엇입니까?

+0

감사합니다. 네, FileWriter, BufferedReader, LineNumberReader로 시도해보십시오. 이제 작동합니다. 내 진짜 문제는 내 SDCard 경로 위치 내 file.txt에 갇혀있어 – Gery

+1

당신이 장치를 루트하지 않는 한 실제로 주위에 어쨌든되지 않습니다. – wyoskibum

0

은 아마 아무도 그런 같은 경우를 얻을 수 ... 당신의 응답 @wyoskibum에 대한

private void Writing() { 
    // TODO Auto-generated method stub 
    try { 
     String[] lines = new String[888]; 
     File internalStorage = Environment.getDataDirectory(); 
     File dir = new File (internalStorage + "/myPde");     
     File file = new File(dir, "ekfslam.pde"); 
     File file_temp = new File(dir, "ekfslam_temp.txt"); 

     FileWriter fw = new FileWriter(file_temp,true); 
     BufferedWriter bw = new BufferedWriter(fw); 
     LineNumberReader lnr = new LineNumberReader(new FileReader(file)); 

     file_temp.createNewFile(); 

     int i = 0; 
     String Line = ""; 
     while (true) { 
      Line = lnr.readLine(); 
      if (Line != null) { 
       lines[i]=Line; 
       i++; 
      } else { 
       break; 
      } 
     } 

     for (int j = 0; j < 50; j+=5) { 
      lines[95] = lines[95]+"\n\t\t Data "+j; 
     }   

     if (file_temp.exists()) {    
     } else { 
      file_temp.createNewFile(); 
     } 

     for (i = 0; i < lines.length; i++){ 
      bw.write(lines[i]); 
      bw.newLine(); 
      System.out.println(lines[i]); 
     } 
     file.delete(); 
     file_temp.renameTo(file); 
     bw.close(); 
     lnr.close();    
    } catch (Exception e) { 
     e.printStackTrace(); 
    } 

} 
관련 문제