2014-11-23 12 views
0

assets에서 텍스트 파일을 어떻게 읽어야합니까?조각에서 애셋의 텍스트 파일을 읽는 방법은 무엇입니까?

여기에 조각을 사용하고 있습니다. getAssets();과 함께 사용할 수없는 것 같습니다. Error:(88, 37) error: cannot find symbol method getAssets() 목표는 여러 문자열을 읽고 쓸 수있게하는 것입니다. 예를 들어

:

AssetManager assetManager = getAssets(); 
InputStream inputStream = null; 
try { 
    inputStream = assetManager.open("hello.txt"); 
} 
catch (IOException e){ 
    Log.e("message: ",e.getMessage()); 
} 
그때, 한 곳에서 값을 읽을 코드의 다른 장소에 값을 쓸 수 있도록하고 싶습니다

. 제발, 필사적으로 도와주세요. 온라인에서 발견 된 것이 없습니다.

+0

당신이 필요로하는 TEXTFILE 추가 파일 사용이 기능을 읽으려면이 클래스

import android.content.Context; import android.content.res.AssetManager; import android.util.Log; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; public class DummyDataReader { Context context; public DummyDataReader(Context context) { this.context = context; } public String ReadTextFromFile(String file) { String data = ""; AssetManager assetManager = context.getResources().getAssets(); InputStream inputStream = null; try { inputStream = assetManager.open(file); StringBuilder buf = new StringBuilder(); BufferedReader in = new BufferedReader(new InputStreamReader(inputStream, "UTF-8")); String str; while ((str = in.readLine()) != null) { buf.append(str); } in.close(); data = buf.toString(); } catch (IOException e) { e.printStackTrace(); } return data; } } 

시도 그 메소드를 호출하는 컨텍스트 그 문맥을 얻기 위해서 조각으로부터 getActivity를 호출 할 수 있습니다. – didierc

+0

아직도 잘 모르겠지만 어떻게 작동합니까? – user2864772

답변

3

getAssets()Context에 관한 방법입니다. Fragment에서 getActivity()으로 전화 한 다음 getAssets()으로 전화 할 수 있습니다.

+0

텍스트 파일에서 값을 읽고 내 변수에 저장하는 적절한 방법이 있습니까? – user2864772

+0

@ user2864772 : "변수"가 무엇인지 알지 못합니다. 애셋은 엄격하게 안드로이드 장치의 "텍스트 파일"이 아닙니다. 단지'AssetManager'에서'open()'을 사용하여 내용물에'InputStream'을 얻는 것만으로 충분합니다. 그런 다음 표준 Java 파일 I/O를 사용하여 해당 'InputStream'을 사용합니다. – CommonsWare

+0

파일에서 값을 읽는 방법은 다양합니다. 하지만 우리가 어떻게 파일을 만들지 모르기 때문에 조언을 할 수는 없습니다. – greenapps

0

String response = new DummyDataReader(getActivity()).ReadTextFromFile("hello.txt"); 
0
public String loadTextFileFromAsset() { 
    String content = null; 
    try { 

     InputStream is = getContext().getAssets().open("dora.txt"); 
     int size = is.available(); 
     byte[] buffer = new byte[size]; 
     is.read(buffer); 
     is.close(); 
     content = new String(buffer,"UTF-8"); 
    } catch (IOException ex) { 
     ex.printStackTrace(); 
     return null; 
    } 
    return content; 
} 

(예를 들어 dora.txt) SRC/메인/자산 폴더에

관련 문제