powered by simpleCommunicator - 2.0.40     © 2025 Programmizd 02
Форумы / Android [игнор отключен] [закрыт для гостей] / TXT reading в Android studio
25 сообщений из 46, страница 1 из 2
TXT reading в Android studio
    #39164044
ilja2210
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет. Тут возникла надобность загрузить в приложение огромный текст, а через чет не хочется. Есть ли другой способ? Мб можно txt формат читать из assets? Срочно нужен совет!
...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39164047
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ilja2210через чет не хочется
Через что?

ilja2210Есть ли другой способ?
Открываешь файл и читаешь последовательно.
...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39164096
ilja2210
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
wadman,

через strings=
как "оформить" прочтение txt? ну чтоб вместо strings программа просто открывала инфу из файла
...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39164103
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Например, как тут (в ответе, буферное чтение) http://stackoverflow.com/questions/12421814/how-can-i-read-a-text-file-in-android

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
    //Find the directory for the SD Card using the API
//*Don't* hardcode "/sdcard"
File sdcard = Environment.getExternalStorageDirectory();

//Get the text file
File file = new File(sdcard,"file.txt");

//Read text from file
StringBuilder text = new StringBuilder();

try {
    BufferedReader br = new BufferedReader(new FileReader(file));
    String line;

    while ((line = br.readLine()) != null) {
        text.append(line);
        text.append('\n');
    }
    br.close();
}
catch (IOException e) {
    //You'll need to add proper error handling here
}

//Find the view by its id
TextView tv = (TextView)findViewById(R.id.text_view);

//Set the text
tv.setText(text.toString());

...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39165093
ilja2210
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
wadman,

такс...а другой способ есть какой?
...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39165095
ilja2210
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
wadman,
просто строчками задолбался писать через strings
...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39165140
ilja2210
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Параллельный вопрос возник- как реализовать такую вещь: нажимаю на кнопку, и программа переходит на новую страницу без активити. Это фрагменты или че? Может, можно переходить с лейаута на лейаут всего-лишь с одним активити?
P.S. понимаю, то вопрос. вероятно, тупой))
...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39165231
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ilja2210Это фрагменты или че?
Угадал...
ilja2210а другой способ есть какой?
Какой другой? Тут все как на компе. Работал на компьютерах с текстом? Если да, то что именно тебе не хватает.
...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39165377
ilja2210
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
wadman,

Так,насчет фрагментов-отличная новость.
Но как вставить txt файл в textviеw?
Задолбался каждую строчку через /n и пробелы переделывать. Очень большой обьем текстов((
Просто хотелось бы,чтобы текст в том виде,в каком он есть в блокноте,переносился в лейаут.
Это реально вообще?
...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39165387
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Файл большой?

ilja2210Задолбался каждую строчку через /n и пробелы переделывать.
Руками переделываешь или все таки код какой-то? :)
...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39165484
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да положи ты его уже в res/raw и читай через context.getResources().openRawResource(id)
...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39165592
ilja2210
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
chpasha,

Так,насчет raw понятно,но можете чуть подробнее про сам код? Не совсем врубился(мб ссылка какая есть).
...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39165624
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ilja2210chpasha,
но можете чуть подробнее про сам код? Не совсем врубился(мб ссылка какая есть).
чем тебе context.getResources().openRawResource(id) не код?
...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39166072
ilja2210
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
chpasha,

ну так я оформлю,значится, это добро в textview в лейауте, затем пишу в активити TextView name; там дальше строчек 5 ниже прописываю context.getResources().openRawResource(textid)? Такое ощущеие, что я оч много че пропустил)))
...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39166223
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ilja2210,

Показал-бы уже код и пояснил, что тебе в нем не нравится. А то ходим вокруг да около...
...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39166934
ilja2210
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
wadman,

все очень примитивно (тут, по крайней мере)
пример лейаута:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:background="#f3d393"
    android:layout_height="fill_parent"
    android:orientation="vertical" android:layout_gravity="right">

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/scroll"
        android:background="#f3d393">
        <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:tools="http://schemas.android.com/tools"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:paddingBottom="@dimen/activity_vertical_margin"
            android:paddingLeft="@dimen/activity_horizontal_margin"
            android:paddingRight="@dimen/activity_horizontal_margin"
            android:paddingTop="@dimen/activity_vertical_margin"
            tools:context="ee.rasim.help.Sprav"
            android:background="#f3d393">


            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Тиреолиберин (ТРГ):\n     5-6 пг/л (РИА)\n\nТиреотропный гормон (ТТГ, ТСГ):\n     0,6-3,8 мк/МЕмл (ИФA)\n     0,24-2,9 мкМЕ/мл (РИА)\n\nТироксин общий (Т4):\n     62-141 нмоль/л (ИФA)\n     65-160 нмоль/л (РИА)\n\nТрийодтиронин общий (Т3):\n     1,17-2,18 нмоль/л (ИФA)\n     1,04-2,50 нмоль/л (РИА)\n\nСвободный тироксин (св. Т4):\n     1,5-2,9 мкг/100 мл (ИФA)\n     10-25 пмоль/л (РИА)\n\nСвободный трийодтиронин (св. Тз):\n     0,4 нг/100 мл (ИФA)\n     4-8 пмоль/л (РИА)\n\nКоэффициент эффективности тироксина (КЭТ):\n     0,86-1,13 (РИА)\n\nИндекс свободного тироксина (ИСТ4):\n     4,42-15,75 (РИА)\n\nОбратный (реверсированный) трийодтиронин:\n     25-80 нг/100 мл (РИА)\n\nТироксинсвязывающий глобулин (ТСвГ):\n     1,2-2,2 мг/100 мл (ИФA)\n     13,3-28,3 мг/л (РИА)\n\nИФ-метод Связанный с белками йод (СБЙ):\n     6-8 мкг/100 мл (хим. метод)\n\nБутанол-экстрагируемый йод (БЭЙ):\n     3,5-6,5 мкг/100 мл (хим. метод)\n\nТиреоглобулины:\n     до 50 нг/мл (РИА)\n\nКальцитонин:\n     5,5-28 пмоль/л (РИА)\n\nПаратиреотропный гормон:\n     20-90 пг/мл\n\n "
                android:id="@+id/textView5"
                android:layout_alignParentEnd="true"
                android:layout_alignParentTop="true"
                android:layout_alignParentStart="true"
                android:textSize="30dp"
                android:textColor="#000000"
                android:background="#ffffff" />
        </RelativeLayout>


    </ScrollView>

</LinearLayout>



пример активти:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
package ee.rasim.help;

import android.content.Intent;
import android.net.Uri;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;


public class Analiz4 extends ActionBarActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_analiz4);
    }



    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_main, menu);
        return true;
    }


    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();

        //noinspection SimplifiableIfStatement
        if (id == R.id.item1) {
            Intent callintent = new Intent(Intent.ACTION_CALL);
            callintent.setData(Uri.parse("tel:911"));
            startActivity(callintent);
        }
        if (id == R.id.item3) {
            Intent intent = new Intent(this, O_nas.class);
            startActivity(intent);
        }



        return super.onOptionsItemSelected(item);
    }
}




было б круто, чтобы можно было бы также скомпоновать нужный мне текст (как в текствью лейаута), но не нужно было бы всяких \n и других танцев с бубнами
...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39166973
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в чем затык? у тебя есть TextView, копируешь большой текст в res/raw. Все что нужно, это при создании Activity достать этот текст с помощью openRawResource из ресурсов и засунуть его в этот TextView. Для этого нужно
1) достать голову из известного места почитать что делает openRawResource
2) почитать как превратить то, что возвращает openRawResource в String
все
...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39167072
ilja2210
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
chpasha,
окей,текст выводит, только чет кирилицу не читает((( как исправить?

да,вот активити:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
package ee.rasim.help;

import android.app.Activity;
import android.content.Intent;
import android.content.res.Resources;
import android.net.Uri;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.text.Html;
import android.text.Spanned;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.TextView;

import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;


public class Akush extends ActionBarActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_akush);
        TextView tv = new TextView(this);

        try {
            tv.setText(getStringFromRawFile(Akush.this));
        } catch (IOException e) {
// TODO Auto-generated catch block
            e.printStackTrace();
        }
        setContentView(tv);
    }





        String getStringFromRawFile(Akush activity) throws IOException
    {
        Resources r = activity.getResources();
        InputStream is = r.openRawResource(R.raw.ex);
        String myText = convertStreamToString(is);
        is.close();
        return myText;
    }
    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();

    }





    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_main, menu);
        return true;
    }


    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();

        //noinspection SimplifiableIfStatement
        if (id == R.id.item1) {
            Intent callintent = new Intent(Intent.ACTION_CALL);
            callintent.setData(Uri.parse("tel:911"));
            startActivity(callintent);
        }
        if (id == R.id.item3) {
            Intent intent = new Intent(this, O_nas.class);
            startActivity(intent);
        }



        return super.onOptionsItemSelected(item);
    }
}



и вот лейаут:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:background="#f3d393"
    android:layout_height="fill_parent"
    android:orientation="vertical" android:layout_gravity="right">

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/scroll"
        android:background="#f3d393">
        <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:tools="http://schemas.android.com/tools"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:paddingBottom="@dimen/activity_vertical_margin"
            android:paddingLeft="@dimen/activity_horizontal_margin"
            android:paddingRight="@dimen/activity_horizontal_margin"
            android:paddingTop="@dimen/activity_vertical_margin"
            tools:context="ee.rasim.help.Sprav"
            android:background="#f3d393">

        </RelativeLayout>


    </ScrollView>

</LinearLayout>



вообще, очень зотелось бы, чтобы можно было фон менять (все выставил, а он конкретно с этим методом белый). мб можно как-то в рамки запихнуть его? до этого между текствью и рамками было по 20 дп, и было норм.
...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39167136
ilja2210
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да,еще и скролить чет нельзя этот файл((
Сменил на кодировку windows 1251- все еще не читает кириллицу.
Что делать? Проблема прям совсем серьезная
...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39167189
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ilja2210Да,еще и скролить чет нельзя этот файл((
ScrollView спасет отца русской демократии

ilja2210Сменил на кодировку windows 1251- все еще не читает кириллицу.
Что делать?
нужно явно указывать кодировку при конвертации потока в строку. используй библиотеку apache commons-io , класс IOUtils.toString(inputstream, charset)
...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39167196
ilja2210
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
chpasha,

в скроллинге помогла строка
Код: java
1.
tv.setMovementMethod(new ScrollingMovementMethod());


а вот с кодровкой чет не понял- можете немного подробнее?
...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39167199
ilja2210
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
chpasha,

http://javarevisited.blogspot.com.ee/2012/08/convert-inputstream-to-string-java-example-tutorial.html
тут что-то похожее, но как не перебирал-не пашет
...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39167275
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ilja2210Что делать?
Попробуй сразу сохранять строки в utf.
...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39167329
ilja2210
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
wadman,

Что вы имели ввиду?
...
Рейтинг: 0 / 0
TXT reading в Android studio
    #39167341
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ilja2210Что вы имели ввиду?
Кодировку. Для андроида нативная кодировка не win1251. Операция конвертирования "на лету" затратная, не считая объема текста.
...
Рейтинг: 0 / 0
25 сообщений из 46, страница 1 из 2
Форумы / Android [игнор отключен] [закрыт для гостей] / TXT reading в Android studio
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]