Все просто, но не работает как положено.
У меня есть текстовый файл, добавленный в качестве необработанного ресурса.Текстовый файл содержит текст, подобный следующему:
b) ЕСЛИ ПРИМЕНИМОЕ ЗАКОНОДАТЕЛЬСТВО ТРЕБУЕТ ЛЮБЫХ ГАРАНТИЙ, ОТНОСЯЩИХСЯ К ПРОГРАММНОМУ ОБЕСПЕЧЕНИЮ, ВСЕ ТАКИЕ ГАРАНТИИ ОГРАНИЧЕНЫ В ТЕЧЕНИЕ ДЕСЯТКИ (90) ДНЕЙ ОТ ДАТЫДОСТАВКА.
(c) НИКАКАЯ УСТНАЯ ИЛИ ПИСЬМЕННАЯ ИНФОРМАЦИЯ ИЛИ СОВЕТЫ, ПРЕДСТАВЛЕННЫЕ ВИРТУАЛЬНЫМ ОРИЕНТЕРОМ, ЕГО ДИЛЕРАМИ, ДИСТРИБЬЮТОРАМИ, АГЕНТАМИ ИЛИ СОТРУДНИКАМИ, НЕ СОЗДАЮТ ГАРАНТИИ ИЛИ В ЛЮБОМ ВОЗМОЖНОСТИ, ЧТОБЫ УВЕЛИЧИТЬ СВОЙ ОБЛАСТЬ,
(d) (только для США). НЕКОТОРЫЕ ГОСУДАРСТВА НЕ ДОПУСКАЮТ ИСКЛЮЧЕНИЯ ПОДРАЗУМЕВАЕМЫХ ГАРАНТИЙ, ПОЭТОМУ ВЫШЕУКАЗАННОЕ ИСКЛЮЧЕНИЕ МОЖЕТ НЕ ОТНОСИТЬСЯ К ВАМ.НАСТОЯЩАЯ ГАРАНТИЯ ДАЕТ ВАМ КОНКРЕТНЫЕ ЮРИДИЧЕСКИЕ ПРАВА, И ВЫ МОЖЕТЕ ИМЕЕТЕ ДРУГИЕ ПРАВОВЫЕ ПРАВА, КОТОРЫЕ РАЗЛИЧАЮТСЯ ОТ ГОСУДАРСТВА К ГОСУДАРСТВУ.
На моем экране у меня есть макет, подобный следующему:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_weight="1.0"
android:layout_below="@+id/logoLayout"
android:background="@drawable/list_background">
<ScrollView android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView android:id="@+id/txtRawResource"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="3dip"/>
</ScrollView>
</LinearLayout>
Код для чтения необработанного ресурса:
TextView txtRawResource= (TextView)findViewById(R.id.txtRawResource);
txtDisclaimer.setText(Utils.readRawTextFile(ctx, R.raw.rawtextsample);
public static String readRawTextFile(Context ctx, int resId)
{
InputStream inputStream = ctx.getResources().openRawResource(resId);
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
int i;
try {
i = inputStream.read();
while (i != -1)
{
byteArrayOutputStream.write(i);
i = inputStream.read();
}
inputStream.close();
} catch (IOException e) {
return null;
}
return byteArrayOutputStream.toString();
}
Показывается текст get, но после каждой строки я получаю странный символ [] Как я могу удалить этот символ?Я думаю, что это новая линия.
РАБОЧЕЕ РЕШЕНИЕ
public static String readRawTextFile(Context ctx, int resId)
{
InputStream inputStream = ctx.getResources().openRawResource(resId);
InputStreamReader inputreader = new InputStreamReader(inputStream);
BufferedReader buffreader = new BufferedReader(inputreader);
String line;
StringBuilder text = new StringBuilder();
try {
while (( line = buffreader.readLine()) != null) {
text.append(line);
text.append('\n');
}
} catch (IOException e) {
return null;
}
return text.toString();
}