У меня был тот же вопрос, и хотя приведенные выше ответы, вероятно, верны, я не смог заставить их работать успешно.Это было почти наверняка ошибкой оператора и невежеством с моей стороны - но на тот случай, если кто-то захочет увидеть, как я - n00b - наконец-то сделал это, вот мое решение:
// this is just the click handler for a button...
public void loadStatesHandler(View v) {
try {
String states = getStringFromRaw(this);
readOutput.setText(states);
}
catch(Throwable t) {
t.printStackTrace();
}
}
private String getStringFromRaw(Context c) throws IOException {
Resources r = c.getResources();
InputStream is = r.openRawResource(R.raw.states);
String statesText = convertStreamToString(is);
is.close();
return statesText;
}
private String convertStreamToString(InputStream is) throws IOException {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
int i = is.read();
while (i != -1) {
baos.write(i);
i = is.read();
}
return baos.toString();
}
Я не совсем уверенпочему это сработало для меня, когда вышеперечисленное не сработало, поскольку это не выглядит принципиально иным, но, как я уже сказал, это была, вероятно, ошибка оператора с моей стороны.