Load a simple text file in Android Studio

Got a brand new project using Google’s new Android Studio IDE.

I’m trying to load a simple text file using an InputStreamReader. I’m getting a file not found exception. Now there isn’t any assets/ folder. I tried to create one and add my file at many different spots (at the root of the project, at the root of the .java file, etc…) I’ve tried to move the file around but still get the file not found.

  • Android MIDI Threading InteruptedException - Aftertouch Messages
  • SysUtils´╣Ľ ApplicationContext is null in ApplicationStatus (WebView)
  • Set TextView text from html-formatted string resource in XML
  • Got exception: fragment already active
  • Can I validate Google Play in-app subscription renewals completely server-side?
  • Android Fail to connect to camera service
  • Now that never was a problem using Eclipse as there is an assets folder created by any template.

    Does anyone know where should the assets go to or how to load them?

    Here is the code used, it fails at .open():

    InputStream iS = resources.getAssets().open("bla.txt");
    BufferedReader reader = new BufferedReader(new InputStreamReader(iS));
    

    I also tried this code in Eclipse, it works and the file contents get loaded. So there’s probably a step needed in Android Studio.

    Related posts:

    Inflating layout in custom control - how?
    Is it essential to close the database?
    Android host intent filters on a wildcard
    Importing ant build.xml in Eclipse
    How to use the ORMLite query builder to get the total records in a table
    How to force stop Intent Service in progress?
  • How do I send an SMS from a shell?
  • How to add (vertical) divider to a horizontal LinearLayout?
  • Eclipse error: R cannot be resolved to a variable
  • How to correctly overwrite methods of SpinnerAdapter
  • Method FloatMath.sqrt() not found
  • eclipse Juno often close automatically after ubuntu upgrade to 14.04 TLS
  • 2 Solutions collect form web for “Load a simple text file in Android Studio”

    1. Step 1:
      Open in Name_Project-Name_Project.iml file.
    2. See the line :
      option name=”ASSETS_FOLDER_RELATIVE_PATH” value=”/src/main/assets”
    3. Step 2:
      Create a sub-folder “assets” in main folder.
    4. Step 3:
      Put file in this folder.
    5. Step 4:
      Load it. Done.

    This code will work for you.It will fetch all data from file.

    public class Quiz extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_quiz);
        try {
            PlayWithRawFiles();
        } catch (IOException e) {
            Toast.makeText(getApplicationContext(),
                    "Problems: " + e.getMessage(), Toast.LENGTH_LONG).show();
        }
    }// onCreate
    
    public void PlayWithRawFiles() throws IOException {
        String str="";
        StringBuffer buf = new StringBuffer();
        InputStream is = this.getResources().openRawResource(R.raw.ashraf);
        BufferedReader reader = new BufferedReader(new InputStreamReader(is));
        if (is!=null) {
            while ((str = reader.readLine()) != null) {
                buf.append(str + "\n" );
            }
        }
        is.close();
       TextView tv=(TextView)findViewById(R.id.tv1);
        tv.setText(buf.toString());
    
    
    }//
            }
    
    Android Babe is a Google Android Fan, All about Android Phones, Android Wear, Android Dev and Android Games Apps and so on.