Mọi thứ đơn giản nhưng không hoạt động như mong muốn.
Tôi có một tệp văn bản được thêm dưới dạng tài nguyên thô. Tệp văn bản chứa văn bản như:
b) NẾU LUẬT ÁP DỤNG YÊU CẦU BẤT K WAR SỰ ĐẢM BẢO NÀO ĐỐI VỚI PHẦN MỀM, TẤT CẢ CÁC ĐẢM BẢO NÀO ĐƯỢC GIỚI HẠN ĐẾN NINETY (90) NGÀY TỪ NGÀY GIAO HÀNG.
(c) KHÔNG CÓ THÔNG TIN HOẶC VĂN BẢN HOẶC TƯ VẤN HOẶC TƯ VẤN B BYNG ĐỊNH HƯỚNG VIRTUAL, NỘI DUNG, NHÀ PHÂN PHỐI, ĐẠI LÝ HOẶC NHÂN VIÊN SALL TẠO MỘT BẢO HÀNH HOẶC BẤT K W CÁCH NÀO ĐỂ KIẾM ĐƯỢC QUYỀN BẢO HÀNH
(d) (chỉ ở Hoa Kỳ) MỘT SỐ NHÀ NƯỚC KHÔNG CHO PHÉP LOẠI TRỪ CÁC ĐẢM BẢO NGAY LẬP TỨC, VÌ KẾT LUẬN TRÊN NÀY CÓ THỂ KHÔNG ÁP DỤNG CHO BẠN. BẢO HÀNH NÀY CHO BẠN QUYỀN HỢP PHÁP CỤ THỂ VÀ BẠN C MAYNG CÓ THỂ CÓ QUYỀN PHÁP LÝ KHÁC R VNG RẤT NHIỀU TỪ NHÀ NƯỚC ĐẾN NHÀ NƯỚC.
Trên màn hình của tôi, tôi có một bố cục như thế này:
<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>
Mã để đọc tài nguyên thô là:
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();
}
Văn bản được hiển thị nhưng sau mỗi dòng tôi nhận được một ký tự lạ [] Làm cách nào tôi có thể xóa ký tự đó? Tôi nghĩ đó là dòng mới.
GIẢI PHÁP LÀM VIỆC
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();
}