Załaduj prosty plik tekstowy w Android Studio

Mam zupełnie nowy projekt przy użyciu nowego Android Studio IDE Google.

Próbuję załadować prosty plik tekstowy za pomocą InputStreamReader. Dostaję plik nie znaleziony. Teraz nie ma żadnych zasobów / folderu. Próbowałem stworzyć jeden i dodać mój plik w wielu różnych miejscach (w korzeniu projektu, w korzeniu.plik java itp...) Próbowałem przenieść plik, ale nadal nie znaleziono pliku.

Teraz, że nigdy nie było problemu z użyciem Eclipse, ponieważ istnieje folder assets stworzony przez dowolny szablon.

Czy ktoś wie gdzie powinny trafić aktywa i jak je załadować?

Tutaj jest użyty kod, zawodzi w .open ():

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

Próbowałem też tego kodu w Eclipse, działa i zawartość Pliku się ładuje. Więc prawdopodobnie jest potrzebny krok w Android Studio.

Author: Can, 2013-05-29

3 answers

  1. Krok 1: Otwórz w Name_Project-Name_Project.plik iml.
  2. Zobacz wiersz : option name= "ASSETS_FOLDER_RELATIVE_PATH" value= "/ src / main / assets "
  3. Krok 2: Utwórz podfolder "zasoby" w folderze głównym.
  4. Krok 3: Umieść plik w tym folderze.
  5. Krok 4: Załaduj. Załatwione.
 87
Author: FIT226557,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-05-30 14:36:18

Ten kod będzie działał dla you.It pobierze wszystkie dane z pliku.

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());


}//
        }
 1
Author: Ashraf,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-09-11 20:21:22

Poprawna odpowiedź nie do końca mi odpowiadała. To działa:

Przejdź do widoku projektu, a następnie przejdź do app/src/main i utwórz nowy katalog assets

Aby załadować plik:

   InputStream is = getApplicationContext().getAssets().open("bla.txt");

Lub:

   InputStream is = context.getAssets().open("bla.txt");

A następnie przekonwertować go na łańcuch w dowolny sposób, przykłady tutaj

Szczegółowy film Jak to zrobić (nie mój)

 0
Author: Nagmon,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-07 12:12:21