Чтение определенной части из текстового файла не работает - PullRequest
0 голосов
/ 15 декабря 2011

Это мой код:

File root = Environment.getExternalStorageDirectory();
        File dir = new File (root.getAbsolutePath() + "/Bonbon info");
        dir.mkdirs();
        File f = new File(dir, "paket.txt");

        StringBuilder text = new StringBuilder();


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

            br.skip(60);

            int charactersRead = 0;

            while ((line = br.readLine()) != null && charactersRead < 12) {
                            text.append(line);
                            text.append('\n');
                            charactersRead++;
            }
        }
        catch (IOException e) {
        }

        final String URL = text.toString();

        TextView tv = (TextView)findViewById(R.id.textView2);
        tv.setText(text);

Чтение работает, но я не могу прочитать только 12 символов, оно читается через конец файла, не знаю почему.

1 Ответ

1 голос
/ 15 декабря 2011

Полагаю, ваш файл относительно короткий.

Вы звоните BufferedReader.readLine(), что, пытаясь быть эффективным, - это поглощать большую часть потока файлов, а не проходить через него символ за символом.

Если вам нужен более точный контроль над тем, что вы читаете, возможно, стоит использовать реализацию InputStream прямо вверх.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...